问题标签 [graphql-mutation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
56 浏览

graphql - 如何进行 GraphQL 更新突变?

我是 GraphQL 的新手。我有一个用于添加数据的模式和突变,但我有点坚持如何进行更新突变以更新数据库上的现有数据。

我知道我可能需要做些什么来实现这一目标,但我会很感激一些关于我的想法是否是正确方法的指示。

这是我的架构,其中包含我的变异 GraphQLObject。

我是否正确地说在解析函数中我需要首先通过 id 在数据库中找到相关对象,然后返回已更新/更改的任何 arg 的 args?不过,我不确定如何在 MongoDB 上通过 id 查找对象。

任何指针肯定会受到赞赏。

0 投票
1 回答
115 浏览

flutter - 颤振未找到材料小部件

我想在颤振中使用突变graphql。但我得到了这个按摩,我无法加载我的代码。

这是我的代码:

这是我得到的错误:

`未找到材料小部件。

TextField 小部件需要一个 Material 小部件祖先。在材料设计中,大多数小部件在概念上都“打印”在一张材料上。在 Flutter 的材质库中,该材质由 Material 小部件表示。例如,渲染墨水飞溅的是 Material 小部件。正因为如此,许多材质库小部件要求在它们上方的树中存在一个材质小部件。

要引入 Material 小部件,您可以直接包含一个,也可以使用包含 Material 本身的小部件,例如 Card、Dialog、Drawer 或 Scaffold。

找不到 Material 祖先的特定小部件是: TextField controller: TextEditingController#c0f68(TextEditingValue(text: ┤├, selection: TextSelection(baseOffset: -1, extentOffset: -1, affinity: TextAffinity.downstream, isDirectional: false) ,组成:TextRange(开始:-1,结束:-1)))装饰:InputDecoration(hintText:“名称”)脏依赖:[UnmanagedRestorationScope,MediaQuery]状态:_TextFieldState#49d5d这个小部件的祖先是::列方向:垂直 mainAxisAlignment:开始 crossAxisAlignment:中心 renderObject:RenderFlex#ce4db NEEDS-LAYOUT NEEDS-PAINT:StreamBuilder<QueryResult?> 状态:_StreamBuilderBaseState<QueryResult?, AsyncSnapshot<QueryResult?>>#26355:突变依赖关系:[_InheritedGraphQLProvider] 状态:MutationState #0e229:列方向:垂直 mainAxisAlignment:开始 crossAxisAlignment:中心 renderObject:RenderFlex#1a73f 需要-布局需要-油漆需要-合成-位-更新:SingleChildScrollView 依赖项:[PrimaryScrollController]:MaterialApp 状态:_MaterialAppState#7f306:主页:_InheritedGraphQLProvider:GraphQLProvider 状态:_GraphQLProviderState#bab20 :MyApp ...相关的导致错误的小部件是:TextField TextField:file:///G:/%D8%B3%D9%88%D8%B1%D8%B3%20%D9%87%D8%A7 %DB%8C%20%D9%81%D9%84%D8%A7%D8%AA%D8%B1/mutation_gql/lib/main.dart:62:25`_GraphQLProviderState#bab20 : MyApp ... 相关的导致错误的小部件是:TextField TextField:file:///G:/%D8%B3%D9%88%D8%B1%D8%B3%20%D9%87% D8%A7%DB%8C%20%D9%81%D9%84%D8%A7%D8%AA%D8%B1/mutation_gql/lib/main.dart:62:25`_GraphQLProviderState#bab20 : MyApp ... 相关的导致错误的小部件是:TextField TextField:file:///G:/%D8%B3%D9%88%D8%B1%D8%B3%20%D9%87% D8%A7%DB%8C%20%D9%81%D9%84%D8%A7%D8%AA%D8%B1/mutation_gql/lib/main.dart:62:25`

在此处输入图像描述

谁能帮帮我?

0 投票
0 回答
71 浏览

c# - 如何在 C# 中使用 Graph Client 将对象传递给 GraphQL 突变

我已经实现了一个mutationin C#,我可以从中调用它,insomnia但是使用我的类型查询相同的问题GraphQLHttpClient 被定义为

突变定义为

这在失眠症中效果很好。参考是- 失眠有效的回应

但是,当我尝试在 C# 中调用相同的突变时,GraphQLHttpClient它会返回一条错误消息,因为GraphQL.Validation.InvalidVariableError: Variable '$CheckOutInput' is invalid。没有为非空变量提供值。 下面是我用来调用突变的代码

您能否指导/提示,这其中缺少什么?

0 投票
1 回答
270 浏览

graphql - 错误无法为不可为空的类型返回 null:父 MyModelType 中的“字符串”(/createMyModelType/id)

我正在尝试在 aws 控制台中触发突变。我已将解析器函数链接到无类型数据源。但是,当我使用输入类型作为参数定义我的突变时,错误“错误无法为不可为空的类型返回 null:父 MyModelType 中的'String' (/createMyModelType/id)。” 发生。如果我用关键字参数替换输入类型,一切都很好。我确定这与我的解析器映射模板有关。如果您想知道我为什么使用 None 类型,我希望能够在不进行真正的数据库更改或突变的情况下触发订阅。我不确定如何使它与输入类型一起使用。这是我的模板代码:

我的架构:

查询我正在尝试运行

变异查询的查询变量

0 投票
0 回答
20 浏览

graphql - 更新字段时如何删除关联表中的现有数据

给定以下架构:

更新记录时如何从表中删除所有现有功能?例如,我想更新具有“A/C”功能的汽车,并将其替换为“4x4”和“白色”。仅当查询中的数据正确时,如何才能从功能中删除所有功能(请记住,功能可以是多个)。这是我的查询:

这是解析器:

0 投票
1 回答
196 浏览

.net-core - 如何使用 GraphQL 突变进行更新(热巧克力)

我们最近在我们的项目中引入了 GraphQL,我以前从未使用过它,但是我非常喜欢它。我们决定使用 .NET Core 的 HotChocolate 库和客户端的 Apollo。

我不太确定的一件事是关于突变,特别是使用突变执行更新和部分更新。 我在某处读到这种做法,我应该坚持为每个 update 创建特定的突变,例如 updateUsername()、updateAddress()、updateCity() 所有这些都应该有特定的突变。

问题在于,如果我决定朝这个方向发展,我的代码库将大幅增长,因为我们非常受数据驱动,每个表有很多表和列。

另一个问题是,如何处理可空属性,我可以创建一个接受某些输入对象的突变,但最终我的实体将被覆盖,并且调用端未提供的所有可空属性都将设置为空。 有没有办法部分处理这个更新,或者我应该为我想要更新的每个属性使用特定的更新突变?

0 投票
0 回答
128 浏览

javascript - 基于两个 GraphQL 类型之间的关系实现嵌套突变

我想创建一个允许我从嵌套字段创建值的表单。相同突变中的根值可以正常工作,但是当我想创建嵌套值时,我不能。以下面的突变为例。

在 GraphQL Playground 中,我可以像这样创建嵌套操作

现在,我可以在我的表单上创建一个没有嵌套值premise的根值,如下所示:content

然后我这样做:

这一切都很好,它的工作原理。

问题

当我需要做同样的事情,但有一个嵌套的额外字段时,问题就来了。这type Premise属于另一个名为Story

belongs动物群是如何创建关系的

突变看起来像这样:

区别在于:

name是它所属的故事的名称。上发现type Story

第一个问题

我如何在我的POST?

第二个问题

在我的const EntryPremiseForm上面我如何表示belongs.name

当我拥有它时,我就可以做到这一点

非常感谢任何帮助。

0 投票
1 回答
83 浏览

javascript - 另一个突变的 GraphQL 结果

同时是否可以使用 GraphQL 突变的结果作为另一个突变的参数?

我想在一次通话中一起创建一个用户和他的地址。

首先我写地址,然后取地址 id 来创建用户。通过输入填充必要的数据非常有效

在不触发客户端的新突变的情况下,这是否可能?

0 投票
0 回答
39 浏览

javascript - 我可以使用 gatsby-source-moltin 插件实现突变吗?

正如您在标题中所读到的,我正在尝试使用此插件通过 graphql (mutations) 添加数据。这是我的代码:

它给了我以下错误。

这是我自己添加自己的graphql中已经存在的产品之一:

是否可以使用此插件仅进行查询以显示数据但不能修改或添加新数据?如果可能的话,我该如何实施以及在哪里实施?问候并感谢您的宝贵时间。

0 投票
0 回答
30 浏览

reactjs - Strapi 和 React Native 设置导致 Apollo 突变失败

希望你做得很好 ?

我遇到了 Apollo Client 查询 Strapi API 的问题。

我创建了以下突变:

我在我的组件中使用 useMutation 挂钩来传递一个对象,以便发布到我的数据库中。

这是在我的注册组件中进行的调用:

这是 onPress 在我的确认按钮上进行的 signUpuser() 调用:

我面临的问题是 400 Bad 请求,没有更多信息:

有没有人面临同样的问题?或者有人可以帮我解决这个问题,我在过去两天一直被困住!

谢谢 !!