graphql - 阿波罗联盟模式,表示不完整
问题描述
我有这个查询:
getMyTransactions {
id
createdAt
}
我得到了这个错误:
"message": "Cannot return null for non-nullable field Transaction.createdAt.",
"path": [
"_entities",
0,
"createdAt"
],
"extensions": {
"code": "INTERNAL_SERVER_ERROR",
"serviceName": "XXX",
"query": "query($representations:[_Any!]!){_entities(representations:$representations){...on Transaction{createdAt}}}",
"variables": {
"representations": [
{
"__typename": "Transaction",
"id": "29bf75e5-b79e-4a7d-a021-84a8b5662aa8"
},
{
"__typename": "Transaction",
"id": "616f3f8a-3c81-4d2e-bce0-03d031a15062"
}
]
},
//etc
为什么variables.representations
缺少createdAt
值?当我直接对 DynamoDB 进行查询时,我可以看到createdAt
所有这两项的值。
我的模式是这样的:
extend type Transaction @key(fields: "id") {
id: ID! @external
}
type Query {
getMyTransactions: [Transaction!]!
}
另一个模式具有事务类型:
type Transaction @key(fields: "id") {
id: ID!
createdAt: String!
}
解决方案
推荐阅读
- python - django如何检查从手机上传的文件的类型
- arrays - 使用转置从列中删除'nil'
- shell - GREP:有没有办法使用 grep 在文件名和模式之间插入文本?
- nginx - 如何让 Nginx 镜像模块不等待响应
- python - 转换熊猫数据框的问题
- python-3.x - python找不到谷歌云模块
- airflow - 如何在气流模板中定义 INT 类型参数?
- android - Gradle Daemon Android Studio:“无法启动守护进程”
- javascript - Javascript - 未使用 onclick 定义函数
- laravel - 提交表单 Laravel 5.6 时出错