我是 graphql 的新手,我遇到了这个问题,不知道如何解决。
例如,我有两个表:书和book_author;
书有book_id和名称 book_author有book_author_id、book_id author_name
两个表需要在单个请求中插入值,但book_author表需要从书表中生成book_id它自己。
有人可以帮助我吗?非常感谢帮助。
预期结果是在调用 POST 请求或插入时。
例如,book_idBK123生成的系统,表中book_author book_id也应相同。
这是可能的 - 重要的文档在这里: https://hasura.io/docs/latest/graphql/core/databases/postgres/mutations/multiple-mutations/#insert-an-object-and-a-nested-object-in-the-same-mutation
mutation {
insert_book_author(objects: {book: {data: {name: "New Book"}}, author_name: "Sarah"}) {
affected_rows
returning {
book_author_id
book {
book_id
name
}
}
}
}
请注意,嵌套书籍对象中未指定 id。Hasura将在插入时自动填充。
添加book
表
添加具有外键book_author
表book
在book
和book_author
之间添加对象关系
对嵌套对象运行突变