javascript - Fauna DB GraphQL 突变通过其 ID 更新表单的许多表单输入
问题描述
我有以下 graphQL 模式,在动物区数据库上运行
type Form {
name: String!
index: Int!
user: User
formInputVals: [FormInputVal!] @relation
}
type FormInputVal {
name: String!
index: Int!
type: String!
formRoot: Form!
}
type User {
name: String!
email: String!
password: String!
forms: [Form] @relation
}
type Query {
allForms: [Form!]
allUsers: [User!]
allFormInputVals: [FormInputVal!]
}
我试图弄清楚我将如何查询和编写一个突变,我将在其中更新特定的表单 id,并通过那里的 id 或动物区数据库中所谓的引用更新与该表单相关的所有特定文档。
我可以用这个突变更新表单名称
mutation{
updateForm(id:"291541554941657608",data:{name:"test"}){
name
}
}
但除此之外,我似乎无法弄清楚如何更新 Form 类型的多个 FormInputVals。我和动物数据库谈过,他们说我可能需要一个通过 lambda 函数的解析器,让我这样做,任何熟悉这个的人。我已经发布了另一个问题,但是我在这个问题中改变了我的最终目标,但是这个问题是类似的
请参阅我的表单中有一个对象映射到动物 DB 集合中的文档 ID。看起来是这样。
[{"291705061039407629":{"name":"test","type":"text"}},{"291705951034016264":{"name":"test","type":"text"}}]
我如何更新动物数据库中 FormInputVal 类型的两个匹配记录。数字代表集合中文档的 ID。
这是用于更新 formInputVal 的 GraphQL 文档的屏幕截图,我的问题是我想一次更新多个文档。
这是 updateForm 文档
更新:我发现创建选项可以一次添加多个文档,只需要弄清楚我是否可以更新或替换所有文档。这适用于一次添加多个文档。
mutation{
updateForm(id:"291541554941657608",data:{
name:"hello",
index:0,
formInputVals:{
create:[
{name:"test", index:0, type:"text"},
{name:"test", index:0, type:"text"},
{name:"test", index:0, type:"text"},
]
}
}){
name
formInputVals{
data{
name
type
index
}
}
}
}
解决方案
推荐阅读
- autosar - 为什么 SoftwarePackage 没有版本?
- django - 如何在 django admin 中确认数据库条目?
- python - Python - “ImportError:没有命名模块”
- javascript - 只需要得到小数点后两位
- php - 复杂的php数组组合(两种不同的结构)
- php - Laravel 5.7:尝试获取非对象的属性“角色”
- java - 如何在 selenium 服务器上提供自定义功能?
- python - Tkinter 背景图像不会加载
- java - 无法使用 jasypt 解密:非法块大小异常
- c# - 如何处理 2 个 asp.net 身份验证,以便在登录一个时不会从另一个注销?