graphql - 如何通过 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 后端)抱怨我在city.id
尝试此查询时试图为非 null 返回 null。这特别发生在没有邻域(也没有城市)的房屋中,因此当它实际上不应该深入到数据结构中时,它会尝试将 city.id 返回为空,因为父邻域为空。
我试图在可用时获取有效的社区详细信息(包括城市),在不可用时获取null
社区。什么是合适的方法?
解决方案
我不得不处理数据库中的数据的问题。上面的查询按预期工作,但我有一些损坏的数据导致查询无法成功完成。
我可以使用https://github.com/graphql/graphiql对其进行调试,这让我可以快速连续地进行 GQL 查询,帮助我准确探查是什么数据字段触发了我的错误。
推荐阅读
- html - 如何在特定的 Chrome 配置文件中打开 Live 服务器
- php - php vcalendar 欧洲/巴黎时间不适用于 MS windows 10 日历的 rsvp
- anylogic - 我在哪里可以找到关于代理人数量的任何逻辑指南?
- python - 未应用功能中的数据框突变
- javascript - 如果我有一个托管在 SharePoint 目录中的 HTML/JS 站点,我可以使用 node.js 来存储站点目录中给定文件夹中的文件名吗?
- laravel - 通过网络访问应用程序时,Laravel 项目路由不起作用
- python - 将函数参数传递给 django 模型实例
- r - 从两个数据框中获取 R 中的常用列名
- flutter - 如何使用 Listview builder 在动态卡片中设置 TextFormFields 和 Controller
- typescript - 如何以字符串形式访问动态路由参数?