0

我无法构建一个 hasura graphql 查询,该查询将一行插入到具有多个外键关系的表中。

我有三个表,“用户”、“组”和“用户组”。“UserGroups”表在 groupId 和 userId 列上有外键关系。我使用 Hasura 的 UI 来跟踪它基于两个外键建议的关系。

我可以通过直接连接到数据库来创建新的用户组,但是当我尝试通过 graphql 查询创建一个新的用户组时,我得到一个外键违规响应。

{
  "errors": [
    {
      "extensions": {
        "path": "$.selectionSet.insert_user_group.args.objects",
        "code": "constraint-violation"
      },
      "message": "Foreign key violation. insert or update on table \"user_group\" violates foreign key constraint \"user_group_userId_fkey\""
    }
  ]
}

这是我尝试使用的突变:

mutation insert_user_group {
  insert_user_group(objects: [{
    userId: 1,
    groupId: 1,
  }]) {
    affected_rows
  }
}

我只能找到有关查询具有一对多关系的表的文档,但没有显示如何构造插入突变。

4

1 回答 1

0

事实证明它失败了,因为我没有在查询中使用字符串来获取 id 值。它们是 BigInt 列,但查询需要字符串才能使插入正常工作。

感谢@praveenweb 的评论。

于 2019-11-18T17:22:03.700 回答