首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GraphQL -如何链接查询和突变?

GraphQL -如何链接查询和突变?
EN

Stack Overflow用户
提问于 2017-04-26 03:42:44
回答 1查看 3.1K关注 0票数 5

在我的graphQL模式中,我有两个对象之间的关系。比如人类和猫。

人类有很多猫,猫有一个人。

如果我想创建一个属于人类的新猫,我需要通过ID查询人类,然后我需要使用这个ID来做一个突变来创建猫。

我怎么把这些锁在一起?这看起来很简单,但却找不到合适的例子。我也很可能是以错误的方式思考这个问题的。

EN

回答 1

Stack Overflow用户

发布于 2017-04-28 06:09:30

我不认为把它们拴在一起是有意义的。如果您想要创建一个新的猫,您需要一个列表,在其中您选择要添加猫的人。所以在你发送突变基因之前,你必须先查询一下人类。

cat的突变将包含所选的人工ids,该过程可能如下所示:

  1. 对人类的查询

代码语言:javascript
复制
const getAllHumansQuery = gql`
query getAllHumans {
   getAllHumans {
      id
      name
   }
}
`;

  1. 使用客户端选择的人员构建表单
  2. 发送创建新的猫突变

代码语言:javascript
复制
// server
`
input CatInput {
  name: String!
  humanIds: [ID!]
}

createCat(newCat: CatInput!) : String
`


// client

const createCatMutation = gql `
  mutation createCat($newCat: CatInput!) {
    createCat(newCat: $newCat) {
      name
    }
  }
`;

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43624620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档