prisma2 如何关联一对多和多对一?

prisma2 how to relate one-to-many and many-to-one?

我需要一些帮助来了解如何设置我的数据模型化。

我想做的是:

model User {
  id         String   @id @default(uuid())
  email      String   @unique
  role       Role     @default(USER)
  group      Group?   @relation(fields: [group_id], references: [id], onDelete: SetNull) 
  group_id   String   
  created_at DateTime @default(now())
  updated_at DateTime @updatedAt

  @@map("user")
}

model Group {
  id         String   @id @default(uuid())
  name       String
  users      User[]
  created_at DateTime @default(now())
  updated_at DateTime @updatedAt
  deleted    Boolean  @default(false)

  @@map("group")
}

当我已经有用户 User[] 用于 User 模型中的关系时,如何制作这个 User 列表?

(顺便说一句,我已经阅读了文档,但我完全迷路了...)

我认为你的代码是正确的,你可以使用prisma-client来测试

这是这种关系的一个例子

model Agents {
  id             Int       @id @default(autoincrement()) @db.UnsignedInt
  name           String?   @db.VarChar(255)
  owner          String?   @db.VarChar(255)
  address        String?   @db.Text
  lat            String?   @db.VarChar(10)
  lng            String?   @db.VarChar(10)
  tel            String?   @db.VarChar(13)
  mobile         String?   @db.VarChar(11)
  workTime       String?   @db.VarChar(255)
  province       Provinces @relation(fields: [provinceId], references: [id])
  provinceId     Int       @db.UnsignedInt
  createDateTime DateTime  @default(now()) @db.Timestamp(0)
  updateDateTime DateTime? @db.Timestamp(0)
  @@index([provinceId], name: "provinceId")
  @@map(name: "agents")
}


model Provinces {
  id             Int       @id @default(autoincrement()) @db.UnsignedInt
  name           String?   @db.VarChar(255)
  coords         String?   @db.Text
  createDateTime DateTime  @default(now()) @db.Timestamp(0)
  updateDateTime DateTime? @db.Timestamp(0)
  agents Agents[]
  @@map(name: "provinces")
}