如何解决如何基于深度祖先在 GraphQL 中列出项目?
我正在使用 GraphQL 开发 AWS Amplify 应用程序。
假设我已经定义了以下祖父模型、父模型、子模型。
type Country
@model
{
id: ID!
name: String!
states: [State] @connection(keyName: "byCountry",fields: ["id"])
}
type State
@model
@key(name: "byCountry",fields: ["countryId","name"],queryField: "listStatesByCountry")
{
id: ID!
name: String!
countryId: ID!
country: Country @connection(fields: ["countryId"])
cities: [City] @connection(keyName: "byState",fields: ["id"])
}
type City
@model
@key(name: "byState",fields: ["stateId",queryField: "listCitysByState")
{
id: ID!
name: String!
stateId: ID!
state: State @connection(fields: ["stateId"])
}
根据上面的定义,我可以根据父元素列出子元素!例如,我有 listStatesByCountry
可以根据传递的国家/地区 ID 列出所有州。同样,我们可以使用 listCitysByState
查询根据所选州列出城市。
我的问题是:如何获取选定国家/地区的城市列表?虽然 City
和 Country
模型之间没有直接关系,但 State
模型位于它们之间!
我需要在 City
模型上定义类似以下内容,但我不知道 countryId
不存在于 City
模型中,因此必须从 {{ 1}} 属性!
state
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。