是否可以对GraphQL中的突变添加查找?假设输入类型类似,其中一个属性是另一个查询的结果。
createPerson(name: "Steve", gender: genders ( name: { eq: "mail" } ) { id } )
其中genders ( name: { eq: "mail" } ) { id }
将恰好返回一个结果值
答案 0 :(得分:0)
GraphQL 允许您:
您当然可以编写一个 createPerson
变异解析器:
但它不影响(不适合)现有记录。
您还可以使用读取解析器使用字段解析器更新记录中缺失的字段 - 一种“最终一致性”。
编写人员解析器以读取人员记录并编写额外的 person.gender
字段解析器以获取缺失的 gender
值。第二个可以用来更新'主要'人[DB表]记录:
下次人员解析器将立即读取 gender
值(来自“主”人员表),[附加] 字段解析器根本不会被调用强>.
此技术可用于转换 DB 数据,而无需编写 SQL/DB 特定代码(不同的语法/类型问题,在更复杂的逻辑上更安全)- 读取每个/所有人的 {{ 1}} 字段。之后可以删除字段解析器(和另一个/旧表)。