Jes*_*ica 2 sql postgresql prisma
我正在使用 prisma 并尝试为我的 Postgres 数据库建模引用表。不确定数据库模式是否正确,但我有一个表,其中包含referId, userId: 1 到 1 和referredUserId: 1 到多个。
model Referral {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @default(now())
referId String // Auto Generate Random String
userId Int @unique
user User @relation(fields: [userId], references: [id])
referredUsersId Int[]
referredUsers User[] @relation(fields: [referredUsersId], references: [id])
}
Run Code Online (Sandbox Code Playgroud)
我不确定如何在用户模型中引用这些。我试过
Referral Referral?
UsersReferred Referral[]
Run Code Online (Sandbox Code Playgroud)
但我收到一个错误
验证模型“用户”时出错:检测到不明确的关系
建立参考表模型的正确方法是什么?我该如何在 prisma 中做到这一点?
相同的两个模型之间存在多种关系,因此您需要指定关系的名称。
model User {
id String @id
Referral Referral? @relation("UserReferral")
UsersReferred Referral[] @relation("ReferredUsers")
}
model Referral {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @default(now())
referId String
userId String @unique
user User @relation(fields: [userId], references: [id], name: "UserReferral")
referredUsersId String
referredUsers User @relation(fields: [referredUsersId], references: [id], name: "ReferredUsers")
}
Run Code Online (Sandbox Code Playgroud)
这是消除关系歧义的参考:参考