database - 接口或联合类型的 GraphQL 查询
问题描述
我们正在 React-Naitive 中实现一个应用程序,为此我们使用 aws 和 amplify。现在我们试图在 graphql 中获取接口或联合类型的所有元素。该接口正在调用 TrackingItem,实现此功能的类型称为 UserFood 和 UserSymptom。我们也尝试了这个,使用 union 和一个 TrackingItems 数组。但是在所有可能性中,我们都没有得到任何元素。返回值只是 null 并且我们期望 TrackingItems 的 ID,或者在 getAllTrackingItems 的情况下是来自 TrackingItem 的 ID 数组。
Graphql 模式:
type Query {
getAllTrackingItems: [TrackingItem]
# Retrieve tracking items
findTrackingItem(id: ID!): TrackingItem
# Search across all UnionTrackingItems
search(id: ID!): [UnionTrackingItems]
}
union UnionTrackingItems = UserSymptom | UserFood
interface TrackingItem {
id: ID!
userId: ID!
}
type UserFood implements TrackingItem @model {
id: ID!
userId : ID!
type: String!
foodId: ID!
food : Food @connection(fields: ["foodId"])
}
type UserSymptom implements TrackingItem @model {
id: ID!
userId : ID!
type: String!
symptomId: ID!
symptom : Symptom @connection(fields: ["symptomId"])
strenght: Int
}
我们在放大模拟后测试的查询:
query MyQuery {
getAllTrackingItems {
id
}
findTrackingItem(id: 1) {
id
}
search(id: 1) {
... on UserFood {
id
}
}
getUserFood(id: 1) {
id
}
}
我们的结果:
{
"data": {
"getAllTrackingItems": null,
"findTrackingItem": null,
"search": null,
"getUserFood": {
"id": "1"
}
}
}
任何人都可以帮忙吗?谢谢!
解决方案
推荐阅读
- python - 为什么从模型生成的边界框保存的图像与原始图像相比分辨率要低得多
- r - 使用 R Shiny 创建问卷
- c++ - 如何通过代码中的麦克风在语音识别中使用pocketsphinx
- angular - 如何使用按钮触发 Facebook Messenger
- javascript - 使用wheelnav.js 如何将我的轮子连接到复制滑块
- excel - VBA Open方法仅在崩溃后才有效
- angular - Angular Reactive Form - 选项下拉菜单
- .net - iText7 7.1.6 中的 PageEventHandler 可能存在内存泄漏
- excel - 如果框为空或少于 1 个字符,则添加状态下拉列表
- java - 配置 hibernate.connection.provider_class C3P0