在两个节点之间创建关系

时间:2019-12-18 08:16:01

标签: node.js graphql

我是graphQL的新手,我不确定是否可行,但请考虑使用此查询

query MyQuery {
  allArticles {
    nodes {
      author {
        u4dF5JJ6YCAYBc1SSPzC {
          schemaType
          label
        }
      }
    }
  }
}

此处返回所有具有以下ID u4dF5JJ6YCAYBc1SSPzC的作者

{
  "data": {
    "allArticles": {
      "nodes": [
        {
          "author": {
            "u4dF5JJ6YCAYBc1SSPzC": {
              "schemaRef": "person",
              "label": "Varun"
            }
          }
        },
        {
          "author": {
            "u4dF5JJ6YCAYBc1SSPzC": {
              "schemaRef": "person",
              "label": "Varun"
            }
          }
        }
      ]
    }
  }
}

这里,第一个问题是,在这种情况下为u4dF5JJ6YCAYBc1SSPzC的id是唯一的,并且作者可能有很多对象,因此ID可能是未知的

author 
---> u4dF5JJ6YCAYBc1SSPzC
---> 7qS4VZzaleSDEG0VX5fi

现在,我的作者引用了另一个图节点,该节点使用此ID来提供有关该作者的所有详细信息

query MyQuery {
  Person {
    nodes {
      id
      email
    }
  }
}

给出以下响应

{
  "data": {
    "Person": {
      "nodes": [
        {
          "id": "u4dF5JJ6YCAYBc1SSPzC",
          "email": "vra@gmail.com"
        },
        {
          "id": "7qS4VZzaleSDEG0VX5fi",
          "email": "al@bnc.com"
        }
      ]
    }
  }
}

如何建立它们之间的关系?这样我就可以查询并从人员那里获取数据了?

0 个答案:

没有答案