首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Python中,为什么GraphQL枚举值显示为null?

在Python中,GraphQL枚举值显示为null的原因可能是由于以下几种情况:

  1. 枚举值未正确定义:在GraphQL中,枚举类型需要事先定义其可能的取值范围。如果在定义枚举类型时,没有正确地指定可选值,那么在使用该枚举类型时,可能会导致枚举值显示为null。解决方法是确保正确定义枚举类型,并指定可选值。
  2. 数据源返回了无效的枚举值:如果从数据源获取的枚举值无效或不在定义的可选值范围内,GraphQL会将其显示为null。在这种情况下,需要检查数据源并确保返回的枚举值是有效的。
  3. 数据类型不匹配:GraphQL中的枚举类型在Python中通常会映射为字符串类型。如果数据源返回的枚举值类型与GraphQL定义的类型不匹配,可能会导致枚举值显示为null。确保数据源返回的枚举值类型与GraphQL定义的类型一致。

总结起来,当GraphQL枚举值显示为null时,需要检查枚举类型的定义、数据源返回的枚举值以及数据类型是否匹配。如果问题仍然存在,可能需要进一步调试和排查代码逻辑。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何优雅地扩展GraphQL系统能力

作者 | 杜艮魁 编辑 | 蔡芳芳 1 背景 为什么要扩展 GraphQL 系统能力 GraphQL 可将 API 表示的数据通过解析函数映射到 GraphQL 的 schema API...真实业务场景,除了获取基础数据外,往往还会有一些对数据进行加工转换和编排控制的需求,例如对数值字段取精或者转换成展示文案、对列表字段进行排序过滤去重、根据条件判断是否请求查询的某些字段、将一个字段的解析结果作为另外一个字段的入参等...{ experimentalField @skip(if: $someTest) } 实际业务场景,是否跳过某些字段获取的条件大多情况需要根据请求变量进行计算判断。...ENUM_VALUE # 枚举 INPUT_OBJECT # 输入对象 INPUT_FIELD_DEFINITION # 输入字段定义 GraphQL 规范并不会限制指令只能定义可执行位或者类型系统位...true 的元素,predicate参数所注解数组元素的字段名称与字段的映射 Map。

1.2K20

GraphQL学习第二篇 -GraphQL类型与查询方式

GraphQL 规范目前规定支持的标量类型有: (1). Int -有符号 32 位整数。 (2). Float-有符号双精度浮点。 (3). String-UTF‐8 字符序列。 (4)....ID-ID 标量类型表示一个唯一标识符,通常用以重新获取对象或者作为缓存的键。 2. GraphQL 其他高级数据类型包括: (1)....Enum-枚举,用于表示可枚举数据结构的类型 。 (5). Input Object-输入对象。 (6). List -列表,列表是其他类型的封装,通常用于对象字段的描述。 (7)....Non-Null-不能为 Null,Non-Null 强制类型的不能为 null,并且在请求出错时一定会报错。...可以用于必须保证不能为 null 的字段,例如数据库的行的 id 字段不能为 null。 2.

84320

CrackQL:一款功能强大的图形化密码爆破和模糊测试工具

工具运行机制  CrackQL的工作原理是将单个GraphQL查询或变异自动批量处理多个别名操作,该工具可以根据CSV输入变量确定要使用的别名数。...以编程方式生成分批GraphQL文档后,CrackQL然后会分批并将Payload发送到目标GraphQL API,并解析结果和错误信息。  ...工具依赖组件  Python3 Requests GraphQL Jinja  工具安装  广大研究人员可以使用下列命令将该项目源码克隆至本地: git clone git@github.com:nichola...CrackQL.py -h Options: -h, --help 显示工具帮助信息和退出 -t URL, --target=URL 目标GraphQL节点的URL...{ twoFactor(otp: {{otp|int}}) { accessToken } } 用户账号枚举 sample-queries/enumeration.graphql query

48410

【JS】197-【译】更优秀的GraphQL中文文档-服务器端

说明该字段必填,也就是说在你发起GraphQL query时,该字段必须是有的,类型语言中,我们用感叹号来标识。 [Episode!]!...不像 JavaScript 和 Python 函数接收一个有序的参数集合,GrapphQL 的参数传递时都指定了名称,在上例,length 字段有一个定义好的参数 unit....这样的作用是 验证这种类型的参数只能是特定的某几个 整个类型系统,该字段始终只有有限的几个可选 下面是 一个枚举定义 GraphQL schema language 是什么样的?...但是像JavaScript 这种对 enum 没有支持多点语言中,其可能被映射一系列的整数集合。...然后客户端是不会知道这些细节的,客户端完全依照 enum 的字符串名称来操作(译者注:这里我也没太懂,等用了 nodejs 实现一遍,再回来补充) Lists and Non-Null 这一段属于废话又多

1K20

GraphQL 快速搭建服务端 API

PythonGraphQL 库:Graphene Glow 的服务器语言是 Python 。所以我们就选用了比较出名的 Graphene-Python 。...为什么选择 GraphQL GraphQL 本身的概念和使用都比较直观,对于开发者来说,比起怎么使用它更终要的事情是了解自身需求并觉得是否需要使用 GraphQL 以及如何使用。...开始服务器端使用GraphQL 安装 Graphene-Python 可以通过 pip 安装,其 pypi 上的包名为 graphene,目前大版本已经更新到了2.0,所以可以用如下命令安装: pip...枚举型的字段可以通过继承 graphene.Enum 来实现,枚举型的处理稍微有点特殊,请通过这里了解更多诸如枚举变量的比较、展示的细节。...对象类型定义不完全相同的字段,如 Crew 的 specie 在数据库中用整型表示,但这里仍将其定义枚举型 Sepcies 。

2.4K30

Saleforce 基于 Kotlin 构建数据管道的探索和实践

此外,所有函数参数都需要检查是否null”,为此需要多个污染代码的分支运算符。分析哪些函数参数可以或不可以为“null”是非常耗时的(而且很麻烦!)。...1为什么是 Kotlin? 我们选择 Kotlin 主要基于如下考虑: Kotlin 对数据 bean 类的丰富支持让我们无需再编写显式的 getter 和 setter。... Java 中使用 Kotlin 接口也几乎不存在摩擦,并且我们 Kotlin 实现的 API 还被其他使用 Java 的团队用上了。...这里你可以清楚地看到 Kotlin 我们提供的几个好处: 空安全性:再也没有难看的的 if/else 空检查了。...使用 when 构造的详尽模式匹配:从第 8 行开始,Kotlin 的 when 表达式对枚举和 case 类进行详尽的模式匹配。

73710

prisma后端框架基本使用

prisma后端框架基本使用 重点 定义:GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义) prisma logout prisma...数据模型的每种类型都映射到数据库表(或无模式数据库的等效结构),并且将CRUD操作添加到GraphQL schema。 Relations描述类型之间的relationship关系。...接口目前不适用于Prisma的数据建模,但将来会支持待实现功能。...具有相关节点的节点被删除的情况下,删除行为确定相关节点应该发生什么。此参数的输入定义具有以下可能枚举: - SET_NULL(默认):将相关节点设置null”。...请注意,无法将双向关系的两端都设置”CASCADE”。

1.6K10

GraphQL 从入门到实践

简单使用可以参照下面这个图: 比如前端希望返回一个 ID 233 的用户的名称和性别,并查找这个用户的前十个雇员的名字和 Email,再找到这个人父亲的电话,和这个父亲的狗的名字(别问我为什么有这么奇怪的查找...对象类型:用户 schema 定义的 type 标量类型:GraphQL 内置有一些标量类型 String、Int、Float、Boolean、ID,用户也可以定义自己的标量类型 比如在 Schema...args:查询传入的参数 context:提供给所有解析器的上下文信息 info:一个保存与当前查询相关的字段特定信息以及 schema 详细信息的 解析函数的返回可以是一个具体的,也可以是...3.2 Query 首先我们来试试 hello world,我们 schema.graphql 写上 Query 的一个入口 hello,它接受 String 类型的返回 # src/schema.graphql...---- 网上的帖子大多深浅不一,甚至有些前后矛盾,在下的文章都是学习过程的总结,如果发现错误,欢迎留言指出~ 参考: GraphQL | 一种你的 API 而生的查询语言 JSON-RPC

2.5K31

解决 GraphQL 的限流难题

之前某公司落地查询 API 方案时,我们没有选择 GraphQL,是因为: GraphQL 对于数据用户来说有一定的学习成本 GraphQL 的稳定性很难做,难以限流 学习成本倒也不是特别大的问题,程序员们本能上还是喜欢接触新东西的...但 GraphQL 模式下,不同的请求成本也是不一样的。 Shopify 的方案执行 GraphQL 请求前会先对这个 GraphQL 请求做静态分析,来计算该请求的成本,成本以“点数”来表示。...Scalars 和 Enums:零点 标量和枚举是 Object 本身的一部分, Object 里我们已经算过消耗了,这里的 scalar 和 enum 其实就是 object 上的某个字段。... GraphQL 的响应获取 Query Cost 信息 当然,你不需要自己计算 query 成本。Shopify 设计的 API 响应可以直接把 object 消耗的成本包含在响应内容。...GraphQL 进行静态分析得到的 实际的查询消耗是通过执行查询得到的 有时实际的消耗也比静态分析得到的消耗要少一些。

1.2K20

GraphQL语法用于模式验证和代码生成的新方法

输出可以是其他模式语言,比如protobuf或JSON schema,也可以是当前支持Go、Ruby和Python的代码。 公共数据模型的好处在于能够轻松地多个团队和服务之间传播其实现。...这个类型系统支持标量、对象、枚举以及这些类型的基本验证。我们使用这个类型系统来定义有效载荷和自定义验证规则(例如数据格式、允许范围、正则表达式匹配和必需属性)。...定义消息契约时,可以根据有效负载类型选择消息契约包含哪些字段。 另一个原因是,GraphQL语法是人类可读的,与JSON Schema相比,使用起来更简单。这促进了团队之间的沟通。...NSA没有对端点、订阅者或发布者的引用。来自NSA的输出代码可以被任何自己管理传输方法的适配器使用。 InfoQ:你还考虑过其他什么设计,你怎么认为这是最好的方法?...InfoQ:GraphQL模式是存储单独的repos,还是存储在生产者或消费者? Nav开发团队:GraphQL模式当前存储与处理器和随后生成的代码相同的存储库

17810

用TS+GraphQL查询SpaceX火箭发射数据

GraphQL 改变了我们对 API 的思考方式,并利用直观的键/对匹配,客户端可以请求在网页或移动应用屏幕上显示所需的确切数据。...SpaceX Launch App 为什么选择 GraphQL + TypeScript? GraphQL API 需要强类型化,数据从单个端点提供。...我们将在列表显示这些数据,当用户点击其中一个项目时,查询 launch 来获取该火箭的更多数据。让我们 GraphQL playground 测试第一个查询。 ?...查询名的后面,你可以通过使用前缀$及类型去指定变量,然后查询体,你可以使用该变量。对于我们的查询,通过传递 $id 变量来设置启动的id,该变量的类型String!。 ?...如果我们使用的数据是 null 或 undefined,它也会警告我们。 ? VS代码自动完成的列表 真是太棒了!编辑将帮助我们进行编码。

3K20

GraphQL两年实战避坑经验

GraphQL 已得到广泛认可并日益流行。我们使用遇到了一些非常有挑战性的问题,值得撰文分享。本文将使用一个示例配置来阐释问题,并给出相应的解决方法。 ?...本文作者使用 GraphQL Voyager 生成的关系概览图 首先谈谈我们为什么会选择 GraphQL? 无需操心如何更新文档,所有的查询(Query)和变更会自动形成文档。...这对于变更不存在问题,但并不适用于所有的查询,因为父对象和子对象只是 Public API 做拼接。解决这个问题,我们需要再次重新编排配置,如下图所示: ?...下面给出一些有助于构建可维护 GraphQL API 的小建议: 类型和枚举的命名必须唯一。...使用查询分页时,设置默认和最大上限。以免他人运行 API 时导致崩溃。 推荐使用 GraphQL Voyager,可生成对 Schema 所有查询、变更、关系的概览图。

1K30

GraphQL 名词 101:解析 GraphQL 的查询语法》【译】

请注意,参数可以显示在任何字段,即使是嵌套层次很深的字段。 为了让你以非常简洁的形式定义一个GraphQL查询,上面的栗子是GraphQL的一种非常简单的形式。... 可以看到,这里的关键是变量名称需要与变量定义所匹配,其名称是Episode枚举的一个成员。...`include` 指令表示只有 if 参数 true 时才引入片段表示的字段。`skip` 指令表示 if 参数 true 时忽略片段的字段。...指令(Directive): 字段、片段或者查询的一个注释,include 指令表示只有 if 参数 true 时才引入片段表示的字段。...skip 指令表示 if 参数 true 时忽略片段的字段。

2.8K20

GraphQL 基础实践

movie 的旁边,name: "Manchester",这个代表着传入 movie 的参数,参数名为 name Manchester,利用这些参数向服务器表达你所需的数据需要符合什么条件。...先看右边的 Schema:type 是 GraphQL Schema 中最基本的一个概念,表示一个 GraphQL 对象类型,可以简单地将其理解 JavaScript 的一个对象, JavaScript...在上面的 Schema ,后面紧跟着的感叹号声明了此类型是个不可空类型(Non-Nullable),参数声明表示该参数不能传入空。...通过上面的类型定义,可以看到 GraphQL 的类型系统起到了很重要的角色。本例,Schema 定义了 name String类型,那么你就不能传 Int类型进去,此时会抛出类型不符的错误。...看到 Schema 定义,COMEDY是枚举类型MovieTypes枚举成员。枚举类型用于声明一组取值常量列表,如果声明了某个参数某个枚举类型,那么该参数只能传入该枚举类型内限定的常量名。

12.8K20
领券