graphql - 使用突变查询 - 创建一个嵌套的对象
问题描述:
我有一个非常简单的模型与post
嵌入几个comments
graphql - 使用突变查询 - 创建一个嵌套的对象
我不知道我应该怎么办突变为一个新的comment
添加到post
正如我已经查询定义找回与给定id
一个post
,我想尝试有以下突变语法工作
mutation {
post(id: "57334cdcb6d7fb172d4680bb") {
addComment(data: {
text: "test comment"
})
}
}
但我似乎无法找到使其工作的方法。即使我处于突变状态,输出类型为post
,addComment被视为post
应具有的字段。
你们有什么想法吗?
感谢
答
我可能是错的,但你可能只想创建一个单独的updatePost突变接受的帖子ID作为参数
type Post {
comments: [ Comment ]
}
input PostInput {
comments: [ CommentInput ]
}
type Mutation {
updatePost(id: ID!, input: PostInput): Post
}
这里的updatePost突变发生的标识发布和更新后的对象作为参数并返回一个Post类型。 所以我会用这个像这样:
mutation {
updatePost(id: '1234', input: { comments: []) {
id
}
}
希望这有助于!
+0
其实这并不完全是我想要的,因为你所提出的建议将会取代你提供的任何评论。 我需要的是一种使用突变内现有的其他突变的方法。 还是谢谢! –
答
也许你可以创建addComment
突变,你传递职位ID,然后返回一个职位。
type Mutation {
addComment(postId: ID!, input: CommentInput): Post
}
你的服务器端突变是怎么样的? –