关系图 QL
Relation GraphQL
尝试实施 join
但总是得到 null
.
type User {
id: Int!
username: String!
recipes: [Recipe]
}
type Recipe {
id: Int!
title: String!
author: User
}
所以基本上我想得到这样的数据:
User {
username,
recipes: [{//recipe}, {//recipe}]
}
我期待的食谱
Recipe {
title,
author: {//user}
}
所以我有如下查询,我想从包含用户的数据库中获取所有食谱
type Query {
recipes: [Recipe!]!
}
这是我的 GraphiQL 查询
{
recipes {
id,
author {
id,
username
}
}
}
但作为回应我有 author: null
{
"data": {
"recipes": [
{
"id": 1,
"author": null
}]
}
}
有什么建议么?谢谢!
也许有人会遇到类似的问题。
已经解决了这个问题。正如@Daniel Rearden 在评论中所说 - 是的,问题出在解析器中。
因此您必须将此字段添加到解析器:
const resolverFunctions = {
User: {
recipes(author) {
return author.getRecipes();
}
},
Recipe: {
author(recipe) {
return recipe.getUser();
}
}
}
之后你会得到我上面需要的数据。
尝试实施 join
但总是得到 null
.
type User {
id: Int!
username: String!
recipes: [Recipe]
}
type Recipe {
id: Int!
title: String!
author: User
}
所以基本上我想得到这样的数据:
User {
username,
recipes: [{//recipe}, {//recipe}]
}
我期待的食谱
Recipe {
title,
author: {//user}
}
所以我有如下查询,我想从包含用户的数据库中获取所有食谱
type Query {
recipes: [Recipe!]!
}
这是我的 GraphiQL 查询
{
recipes {
id,
author {
id,
username
}
}
}
但作为回应我有 author: null
{
"data": {
"recipes": [
{
"id": 1,
"author": null
}]
}
}
有什么建议么?谢谢!
也许有人会遇到类似的问题。 已经解决了这个问题。正如@Daniel Rearden 在评论中所说 - 是的,问题出在解析器中。
因此您必须将此字段添加到解析器:
const resolverFunctions = {
User: {
recipes(author) {
return author.getRecipes();
}
},
Recipe: {
author(recipe) {
return recipe.getUser();
}
}
}
之后你会得到我上面需要的数据。