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

在GraphQL中使用update mutaiton时,无法读取null错误的属性'save‘

在GraphQL中使用update mutation时,无法读取null错误的属性'save'通常是由于数据模型中的某个属性被设置为了null,而在更新操作中未进行有效的处理导致的错误。

为了解决这个问题,可以采取以下步骤:

  1. 检查数据模型:首先,检查你的数据模型,确认是否存在一个名为'save'的属性。如果不存在,那么可能是你在更新操作中错误地引用了一个不存在的属性。
  2. 检查输入数据:确保在更新操作中提供了正确的输入数据。如果某个属性被设置为了null,那么在更新操作中应该进行相应的处理,例如使用默认值或者忽略该属性的更新。
  3. 添加有效性检查:在进行更新操作之前,可以添加一些有效性检查来确保输入数据的正确性。例如,可以使用GraphQL的输入对象类型来定义输入数据的结构,并在resolver函数中对输入数据进行验证。
  4. 错误处理:在resolver函数中,对于无法读取null错误的属性'save',可以添加相应的错误处理逻辑。例如,可以返回一个错误对象,指示无法读取属性的原因,并提供相应的解决方案。

总结起来,解决在GraphQL中使用update mutation时无法读取null错误的属性'save'的问题,需要检查数据模型、输入数据的有效性,添加有效性检查和错误处理逻辑。这样可以确保更新操作的顺利进行,并提供良好的用户体验。

关于GraphQL的更多信息,你可以参考腾讯云的产品介绍页面:腾讯云GraphQL

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

相关·内容

大厂都在实践GraphQL,你了解吗?

定义模型后,让我们将其放在资源目录文件夹 graphql 下,文件名为 schema.graphqls 。Spring 会自动读取扩展名为 *.graphqlss 模型文件。...带有@QueryMapping注释函数将成为查询处理程序。 查询名称会自动映射到函数名称,或者使用 @QueryMapping接口value参数(本例为person)显式定义它。...使用 GraphIQL 查询数据 我们可以路径 /graphiql 访问 GraphiQL 接口。 查询数据之前,让我们先使用 mutation 操作存储一些数据。...GraphQL 错误处理 首先看看当我们遇到错误时会发生什么。 为此,我们调用获取电话字段,抛出一个异常。...对 GranphQL有兴趣同学可以官网https://graphql.org/ 进一步了解更深入知识。

2.4K40

GraphQL+Koa2实现服务端API结合Apollo+Vue

从这个意义上说,它是数据库无关, 而且可以使用 API 任何环境中有效使用,我们可以理解为 GraphQL 是基于 API 之上一 层封装,目的是为了更好,更灵活适用于业务需求变化 GraphQL...比如:字段冗余,扩展性差、无法聚合 api、无法 定义数据类型、网络请求次数多 GraphQL 出现整好弥补了 RESTful APi 不足 使用 GraphQL 公司 目前已经有很多公司使用...:不能为Null Non-Null强制类型值不能为null,并且在请求出错一定会报错。...将它与vue-apollo和graphql一起安装: npm install vue-apollo graphql apollo-boost --save src/main.js引入apollo-boost...,请求数据会放在navList这个属性上面,模板可以直接使用当前属性 简单查询文档 带参数查询参考 import gql from'graphql-tag'; export default{

5.2K42
  • GraphQL】225-GraphQL真香入门教程

    便于维护,根据需求平滑演进,添加或隐藏字段; GraphQL 使用类型来保证应用只请求可能数据,还提供了清晰辅助性错误信息。应用可以使用类型,而避免编写手动解析代码。 2....自定义返回类型 实际开发,我们返回数据类型可能是一个对象,对象可能既有 Int 类型属性,也有 String 类型值,等等,这里我们可以使用 自定义返回类型 来处理: //...省略其他 const... express ,可以很简单使用中间件来将请求进行拦截,将没有权限请求过滤并返回错误提示。 中间件实际上是一个函数,接口执行之前,先拦截请求,再决定我们是否接着往下走,还是返回错误提示。...属性属性定义 定义类型后,键值对形式 定义参数对象 fields 属性,值为对象,每个属性名为键名,值也是对象,其中 type属性值为 graphql 属性,下面会补充 补充: fields...属性属性类型通常有: graphql.GraphQLString graphql.GraphQLInt graphql.GraphQLBoolean ....

    8.1K21

    GraphQL真香入门教程

    便于维护,根据需求平滑演进,添加或隐藏字段; GraphQL 使用类型来保证应用只请求可能数据,还提供了清晰辅助性错误信息。应用可以使用类型,而避免编写手动解析代码。 2....自定义返回类型 实际开发,我们返回数据类型可能是一个对象,对象可能既有 Int 类型属性,也有 String 类型值,等等,这里我们可以使用 自定义返回类型 来处理: //...省略其他 const... express ,可以很简单使用中间件来将请求进行拦截,将没有权限请求过滤并返回错误提示。 中间件实际上是一个函数,接口执行之前,先拦截请求,再决定我们是否接着往下走,还是返回错误提示。...字符后面,这里是 typeHero 参数对象 name 属性属性定义 定义类型后,键值对形式 定义参数对象 fields 属性,值为对象,每个属性名为键名,值也是对象,其中 type属性值为...graphql 属性,下面会补充 补充: fields 属性属性类型通常有: graphql.GraphQLString graphql.GraphQLInt graphql.GraphQLBoolean

    7.2K30

    干货 | 携程基于 GraphQL 前端 BFF 服务开发实践

    假设我们实现了以下 GraphQL 接口: 当查询 addTodo 节点,其 resolver 函数抛出错误,将会出现在顶层 errors 数组里,而 data.addTodo 则为 null。...但是, GraphQL 这种错误节点可能在任意层级场景,该模式会显著增加节点层级。...其实, GraphQL 处理错误类型,有更好方式——union type。... GraphQL ,空值处理有个特性是,当一个非空字段却没有值GraphQL 会自动冒泡到最近一个可空节点,令其为空。...由于非空类型字段不能为空,字段错误被传播到父字段处理。如果父字段可能是null,那么它就会解析为null,否则,如果它是一个非null类型,字段错误会进一步传播到它父字段。

    2.6K20

    GraphQL 实践与服务搭建

    这个片段在线体验中就无法体验到,后在后文中展示到。这里你只需要知道 GraphQL 能够执行基本 CRUD 即可。...不仅需要在后端配置 GraphQL 服务,用于接收 GraphQL 查询并验证和执行,此外前端通常需要 GraphQL 客户端,来方便使用 GraphQL 获取数据,目前实用比较多是Apollo Graph...把工作量基本都丢给了后端,所以遇到使用这门技术公司,尤其是后端岗位就需要考虑有没有加班可能了。...在上面一开始例子是 Code First 方式,通常使用该方式即可,无需关心 Schema 是如何生成。下文也会以 Code First 方式来编写 GraphQL 服务。...因此,您不必为分散代码@Field 装饰符而烦恼。

    5.2K10

    使用NestJs、GraphQL、TypeORM搭建后端服务

    我们过去常用RestFul API,我们可能在不同业务需要调用同一个接口,但是各自所需数据有不同情况下,服务端为了同时满足两个需求则提供了更多字段,这样导致了一个两个业务请求到数据都包含了自己不需要字段...此前有提到,NestJs里面万物皆是Module,所以这里TypeORM也是作为一个子Module添加到整个服务。所以它位置应该在imports这里。...我们先把需要依赖安装下: $ npm i @nestjs/graphql --save 因为Graphql需要依赖具体事务,所以我们src/modules/pokemon目录下创建三个文件,分别是...Field:声明一个属性,这个属性属于ObjectType进行API查询时候将会用于解释一个字段,它对类一个属性进行装饰,使用方式:@Field。...结语 其实总体来说,整个NestJs应用开发体验还是蛮好,相关生态也发展比较成熟,本项目仅是对相关技术一个整体尝试,实际开发过程遇到还有很多别的问题,比如GraphQLN+1查询问题,

    6.6K10

    多国语言在线客服系统源码+软件下载二合一集成

    但是当你尝试这个,你可能会有点失望。   您发布消息并接收自己消息。   接下来,您打开另一个浏览器,登录另一个用户,打开“客服系统”,然后发布消息。   ...您无法原始浏览器上收到另一条消息。   ...2 添加带参数订阅类型   更新 graphql 架构   因此,我们添加了一个 Subscription 类型,其参数roomName类似于onCreateRoomChatByRoomName上一篇文章添加参数...你试试这个程序,你可以收到另一个用户消息。   这意味着,“只有授权用户才能发布使用在线客服系统。”   3、但是,我们经常使用“授权用户可以发布但所有用户都可以阅读”系统。   ...您打开浏览器并打开“封闭聊天”(使用非授权用户)。   然后,您打开另一个浏览器,登录另一个用户,打开“客服系统”,然后发布消息。   您可以原始浏览器上接收消息!

    1.3K20

    django 1.8 官方文档翻译: 2-3-1 模型实例参考

    可选exclude 参数用来提供一个可以从验证和清除中排除字段名称列表。ModelForm 使用这个参数来排除表单没有出现字段,使它们不需要验证,因为用户无法修正这些字段错误。...调用save() 之前无法知道ID 值,因为这个值是通过数据库而不是Django 计算。...当你调用save() ,Django 使用下面的算法: 如果对象主键属性为一个求值为True 值(例如,非None 值或非空字符串),Django 将执行UPDATE。...关于这个细微差别的更多信息,参见上文显示指定主键值 和下文强制使用INSERT 或UPDATEDjango 1.5 和更早版本设置主键,Django 会作一个 SELECT。...强制使用INSERT 或UPDATE 一些很少见场景,需要强制save() 方法执行SQL INSERT 而不能执行UPDATE。或者相反:更新一行而不是插入一个新行。

    1.9K10

    GraphQL 从入门到实践

    Query 开始查找,找到对象类型(Object Type)使用解析函数 Resolver 来获取内容,如果返回是对象类型则继续使用解析函数获取内容,如果返回是标量类型(Scalar Type...对象类型:用户 schema 定义 type 标量类型:GraphQL 内置有一些标量类型 String、Int、Float、Boolean、ID,用户也可以定义自己标量类型 比如在 Schema...注意: Query 查询字段,是并行执行,而在 Mutation 变更时候,是线性执行,一个接着一个,防止同时变更带来竞态问题,比如说我们一个请求中发送了两个 Mutation,那么前一个将始终在后一个之前执行...一些常用解决方案如 Apollo 可以帮省略一些简单解析函数,比如一个字段没有提供对应解析函数,会从上层返回对象读取和返回与这个字段同名属性。...---- 网上帖子大多深浅不一,甚至有些前后矛盾,在下文章都是学习过程总结,如果发现错误,欢迎留言指出~ 参考: GraphQL | 一种为你 API 而生查询语言 JSON-RPC

    2.5K31

    一步一步学习Vue(十一)

    /todolist.js"> 注意要在html页面引入vuex路径,我们这里直接使用cdn上库,开始我们重构 第一步:创建全局store vuex...,现在每个组件逻辑都是它自己负责,表单组件负责保存操作,所以在其中提交commit(“save”);todo组件负责编辑和删除,所以在其方法中封装了remove和editmutaiton访问。...小结,store定义状态,是响应式,对其中状态改变会导致view重新渲染,改变状态只能通过提交mutation。...由于其状态响应式,所以我们访问一般定义成计算属性,如TodoContainer组件initItem和items;一般来说,不是所有状态都要定义到vuexstore,每个组件都会有自己私有状态...,只有全局或者共享状态才适合定义store,所以实际开发,需要好好斟酌;本篇就到此为止,其实算是上篇一个延伸,下一篇介绍Actions,会继续本篇demo基础上进行延伸,敬请期待。

    71020

    基于 actix、async-graphql、rbatis、pgsqlmysql 构建 GraphQL 服务(4)-变更服务

    变更服务 接下来,我们开发 GraphQL 变更服务。示例,我们以模型 -> 服务 -> 总线顺序来开发。这个顺序并非固定,实际开发,可以根据自己习惯进行调整。...cred 是计划使用 PBKDF2 对密码进行加密(salt)和散列(hash)运算后鉴权码,需要定义,但无需新增填写。...因此,在此我们需要介绍一个 async-graphql 属性标记 #[graphql(skip)],其表示此字段不会映射到 GraphQL。...同时,实际应用,插入用户,我们应当设定一个用户唯一性标志属性,以用来判断数据库是否已经存在此用户。本实例,我们使用 email 作为用户唯一性标志属性。...这是因为,我们前几篇教程,仅编写查询服务代码,所以服务器 Schema 构建使用是 EmptyMutation。

    1.2K30

    使用 TheGraph 完善Web3 事件数据检索

    说,我们要显示输/赢游戏总数,并在有人再次玩更新它。...graphql-querygif 这两个图像几乎包含了GraphQL本质。通过第二个图查询,我们可以准确定义所需数据,因此可以一个请求获得所有内容,仅此而已。...你可能已经猜到了,它使用GraphQL作为查询语言。 ? 示例始终是最好理解方法,因此让我们游戏合约示例中使用TheGraph。...我们示例,我们定义了从玩家到下注一对多关系。!表示该值不能为空。...); } 在前端使用 使用类似ApolloBoost东西,你可以轻松地将TheGraph集成到ReactDapp(或Apollo-Vue),尤其是当使用React hooks和Apollo,获取数据就像编写单个代码一样简单组件中进行

    1.6K10

    REST API和GraphQL API比较

    RESTful API 使用 HTTP 方法处理数据执行 CRUD(创建、读取、更新和删除)过程。 为了促进缓存、AB 测试、身份验证和其他过程,标头向客户端和服务器提供信息。...动图 ) GraphQL 和 REST 之间进行选择要考虑事项 安全 REST API 使用 HTTP,允许使用传输层安全性进行加密,并提供多种 API 身份验证选项。...它们也可以由客户端存储以供经常使用,并由浏览器缓存。GraphQL 通过单个端点提供,通常是 (/graphql),并且与 HTTP 规范不同。因此,无法像 REST API 那样缓存查询。...错误处理 每个 GraphQL 请求、成功或错误都会返回 200 状态代码。与 REST API 相比,这是一个明显区别, REST API ,每个 状态代码都指向某种类型响应。...GraphQL 任何合法答案都应该是 200,包括数据和错误响应。客户端工具将有助于更有效地管理错误错误作为特定错误对象下响应主体一部分进行处理

    45110

    Rust 和 Wasm 融合,使用 yew 构建 web 前端(4)- 获取 GraphQL 数据并解析

    然后, frontend-yew/graphql 文件夹创建一个新文件 all_projects.graphql,描述我们要查询项目数据。...请求(request)构建 使用 graphql_client 构建查询体(QueryBody) 在此,我们需要使用到上一节定义 GraphQL 查询描述,通过 GraphQLQuery 派生属性注解...; 注 1:如果你遇到同源策略禁止读取错误提示,请检查服务后端是否设定了 Access-Control-Allow-Origin 指令,指令可以用通配符 * 或者指定数据源链接地址(可为列表)。...我们集中于数据展示渲染方面:yew html! 宏,是不能使用 for in Vec 这样循环控制语句,其也不能和 html! 宏嵌套使用。但 html!...比如:项目列表,对于链接 href 属性,必须是实现了 IntoPropValue>> 特质(trait) String

    8K30

    【译】Graphql, gRPC和端对端类型检验

    GraphQL 当听到我们需要在这个项目中“整合许多不同数据源”,我立即意识到使用GraphQL作为API网关会是一个不错选择。.../src/types.ts" }, 通过这些schema,我们可以使用yarn genTypes来生成types.ts文件types,并在实现解析器使用它们。...为了保证GraphQL server和前端之间类型安全,我们使用Apollo CLI代码生成器:使用命令行来生成我们所有GraphQL查询类型: React示例 我们应用需要用到三种查询:...然而,不像.jsx/.js之间那样宽松,当文件包含任何JSX代码,你必须使用.tsx扩展名,这样TypeScript才能消除JSX和其他TypeScript语言特性之间歧义。...此外,由于实现了端对端类型检验,很难出现数据错误使用或是引入向前不兼容变更。如果我们需要引入向前不兼容变更,也很容易发生变更之前决定我们系统哪些部分是需要进行修改

    3.1K20

    GraphQL到底怎么使?看看智联前端团队技术沉淀

    此文是作者考虑 GraphQL Node.js 架构落地方案后所得。...} 预期数据会返回 data ,当有错误时,会出现 errors 字段并按照规范规定格式展示错误。...其他定义 当然,使用 GraphQL 过程,还可以: 使用 Variables(变量)复用同一段 Document 来动态传参。...而在研究 GraphQL 发生误解在于: 规范、教程提到 query(查询)无法确认是指客户端侧客户端发出 Query Document 整个操作还是,Document query 操作...使用 JavaScript 开发接口服务,相对其他各种数据模型定义尝试,提供了定义数据模型统一实践和强规范,也算是收益之一。

    2.3K20

    精读《初探 Reason 与 GraphQL

    2 内容概要 一切皆模块 reason ,一切皆模块,而且不需要手动申明导出与引用,这个是 js 痛点。...定义 graphQL 类型graphql-tools 允许通过 [Post] 语法将文章对象关联到作者。...一条条接口录入方案是可行,技术成本也几乎为零,但问题是后续代码变动会导致平台与实际接口不一致,或者某些项目甚至绕过了接口录入,导致一些接口游离平台之外,无法聚合管理。...不过对于后端代码并不掌握在前端团队来说,如果不推动后端改造成 graphql,是无法享受到这个好处,这时如果搭建一个 node 版 graphql 桥梁,那又如何衔接这个桥梁与后端呢?...所以使用 graphql 若不是第一手后端代码,使用后也不会有多少效果。

    67440
    领券