如何通过 GraphQL 查询包含非空字段的可空数据?
How to Query nullable data that contains non-null fields via GraphQL?
假设我的数据结构如下:
house: {
id: Int,
address: String,
neighborhood (Foreign Key, Nullable): {
id: Int,
name: String,
city (Foreign Key, Nonnull): {
id: Int (Nonnull)
name: String
}
}
}
我正在构建以下查询:
{
homes {
house {
id
address
neighborhood {
id
name
city {
id
name
}
}
}
}
}
GraphQL(React Apollo 前端,Graphene + Django 后端)抱怨说当我尝试此查询时,我正在尝试 return null for non-null city.id
。这种情况专门发生在没有社区的房子(反过来也没有城市),所以它试图 return city.id as null 当它实际上不应该深入数据结构时,因为父邻域为空。
我试图在可用时获取有效的社区详细信息(包括城市),在不可用时获取 null
社区。什么是合适的方法?
我遇到的问题是处理数据库中的数据。上面的查询按预期工作,但我有一些损坏的数据导致查询无法成功完成。
我能够使用 https://github.com/graphql/graphiql 进行调试,这让我可以快速连续地进行 GQL 查询,帮助我准确地探查是什么数据字段触发了我的错误。
假设我的数据结构如下:
house: {
id: Int,
address: String,
neighborhood (Foreign Key, Nullable): {
id: Int,
name: String,
city (Foreign Key, Nonnull): {
id: Int (Nonnull)
name: String
}
}
}
我正在构建以下查询:
{
homes {
house {
id
address
neighborhood {
id
name
city {
id
name
}
}
}
}
}
GraphQL(React Apollo 前端,Graphene + Django 后端)抱怨说当我尝试此查询时,我正在尝试 return null for non-null city.id
。这种情况专门发生在没有社区的房子(反过来也没有城市),所以它试图 return city.id as null 当它实际上不应该深入数据结构时,因为父邻域为空。
我试图在可用时获取有效的社区详细信息(包括城市),在不可用时获取 null
社区。什么是合适的方法?
我遇到的问题是处理数据库中的数据。上面的查询按预期工作,但我有一些损坏的数据导致查询无法成功完成。
我能够使用 https://github.com/graphql/graphiql 进行调试,这让我可以快速连续地进行 GQL 查询,帮助我准确地探查是什么数据字段触发了我的错误。