【问题标题】:Create entry in related table when inserting an item into Hasura?将项目插入 Hasura 时在相关表中创建条目?
【发布时间】:2021-05-17 20:19:02
【问题描述】:

我有两张表,一张有另一个外键。为了便于使用,假设我有一个名为“Boy”的表,其外键为 iceCreamId 到名为“IceCream”的表。

在 hasura 中,当我插入 boy 时,我可以看到如何在 IceCream 中创建条目的唯一方法是通过查询。

当通过后端插入“男孩”时,有什么方法可以触发默认的 IceCream 插入?不喜欢依赖前端来执行此操作。

【问题讨论】:

    标签: graphql hasura


    【解决方案1】:

    Hasura 构建在您的数据库功能之上,当您接受底层数据库必须提供的所有功能时,它的效果最佳。

    这可以使用Database Trigger 轻松完成(我假设您在这里使用的是 Postgres)

    触发器允许您在后端运行其他逻辑以进行验证,或者在更新、删除或创建记录时执行创建、更新、删除等操作

    【讨论】:

      【解决方案2】:

      您可以简单地使用 Hasura 事件触发器

      Hasura 可用于在 Postgres 中的表上创建事件触发器 数据库。事件触发器可靠地捕获指定表上的事件 并调用 webhook 来执行任何自定义逻辑。

      因此,在您的情况下,您可以在 Boy 表的创建/更新上设置一个简单的事件触发器,然后您可以在您的表中创建 IceCream 行网络挂钩。

      事件触发器最酷的一点是,您可以在失败的情况下手动调用/重试相同的操作!

      更多信息:Hasura Event triggers

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-24
        • 1970-01-01
        • 1970-01-01
        • 2022-01-10
        • 1970-01-01
        • 2013-10-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多