【发布时间】:2020-01-28 11:48:18
【问题描述】:
我也在Prisma forum上问过这个问题。
** 编辑**:论坛在我提出问题后仅 1 天就被锁定为只读。这肯定会变得很可怕,因为没有官方宣布他们是否会在实现承诺的功能后停止开发 Prisma 1。他们当然可以说些什么。 TBH,不稳定的 Prisma 网站确实增加了我对 Prisma 的信心,尽管他们的 repo 中有很多明星。
我是 Prisma 的新手。所以我想定义User、Event 和Role 之间的三向关系。对于User 和Event 的每个关联,都存在该关联的Role。如果我要为另一个 ORM 设计一个数据库表,我会创建一个 event_user 表,其中 user_id、event_id 和 role_id 作为列来关联它们。
实际上,这 3 列中的一行必须是唯一的。显然,如果 Prisma 能够保护这些约束,那就太好了,但 obvious solution I see 甚至可能不会出现在 Prisma 1 中。
我目前的设计包括以下内容:
type User {
// ...
eventUsers: [EventUser!]!
}
type Event {
// ...
eventUsers: [EventUser!]!
}
type EventUser {
role: Role!
event: Event!
user: User!
}
这样的设计会让所有xxWhereUniquexx的渲染都无法使用,这绝对是维护关系的麻烦。 upserts 肯定无法维持关系。
如何在 Prisma 中建立这样的关系?
在某些情况下,每个用户也会有一个全局角色列表,因此User 和Role 之间已经存在关联。问题涉及每个事件的“本地角色”。
【问题讨论】:
标签: prisma