【发布时间】:2022-11-08 02:03:14
【问题描述】:
我正在关注有关创建待办事项应用程序 https://hasura.io/learn/graphql/hasura-advanced/introduction/ 的 Hasura 基本教程,并希望对其进行扩展并且几乎没有额外的操作,但似乎无法。设置与教程中的一样 - 您有 Tasks 表和 title、description、authorId、isComplete、isPublic 列。表权限的设置与教程中一样,因此用户只能选择自己的任务或公共任务。他们也可以只更新自己的任务。我要添加的操作:
- 仅查询不属于他们的公共任务(此外,反之亦然 - 仅属于他们而没有公共任务)。
- 改变公共任务以完成不属于他们的任务(更新
isComplete而不具有其他列的权限)。我可以为第一种情况创建视图,但是对于这样一个简单的逻辑来说,这似乎太过分了。我认为这两种情况都可以通过访问请求标头 (
x-hasura-user-id) 来完成,如下所示:query PublicTasksOnly { tasks(where: {isPublic: {_eq: true}, authorId: {_neq: x-hasura-user-id}}) { description isComplete title } }但似乎这是不可能的。任何想法/建议如何实现这一目标?
【问题讨论】:
标签: hasura