我正在Prisma的帮助下创建一个数据库,我遇到了一个问题.我有两个模型:用户和课程.在第一课中,存储了参与的用户的ID和培训者的ID,这也是一个用户模型.我希望,在下载课程时,能够立即获得参与其中的用户和培训师,而不是他们的ID,而是整个用户的数据.
我知道我需要一段感情,但我不能创造. 我的图式.棱镜:
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
enum LessonState {
ACTIVE
CLOSED
}
model Lesson {
id String @id @default(uuid()) @map("_id") @db.Uuid
date DateTime @default(now())
subject String
description String
state LessonState @default(ACTIVE)
usersIds String[] @db.Uuid
coachId String @unique @db.Uuid
}
enum UserRoles {
ADMIN
USER
}
model User {
id String @id @default(uuid()) @map("_id") @db.Uuid
name String
surname String
password String
login String @unique
birthDate DateTime
role UserRoles @default(USER)
createdAt DateTime @default(now())
}
我关心单向关系,但从我发现的情况来看,Prisma不允许这样的关系,所以如果有必要,他们可以是双向的.至于 Select PostgreSQL,你可以说这是随机的--如果其他系统允许我做我需要的事情,我可以切换到它.同样的道理也适用于Prisma--如果它支持我需要的东西,我可以使用另一个ORM.