mirror of
https://github.com/lukevella/rallly.git
synced 2025-07-24 03:37:23 +02:00
39 lines
1.1 KiB
Text
39 lines
1.1 KiB
Text
model Space {
|
|
id String @id @default(uuid())
|
|
name String
|
|
ownerId String @map("owner_id")
|
|
createdAt DateTime @default(now()) @map("created_at")
|
|
updatedAt DateTime @updatedAt @map("updated_at")
|
|
|
|
owner User @relation("UserSpaces", fields: [ownerId], references: [id], onDelete: Cascade)
|
|
polls Poll[]
|
|
scheduledEvents ScheduledEvent[]
|
|
subscription Subscription? @relation("SpaceToSubscription")
|
|
|
|
members SpaceMember[]
|
|
|
|
@@index([ownerId], type: Hash)
|
|
@@map("spaces")
|
|
}
|
|
|
|
enum SpaceMemberRole {
|
|
OWNER
|
|
ADMIN
|
|
MEMBER
|
|
}
|
|
|
|
model SpaceMember {
|
|
id String @id @default(uuid())
|
|
spaceId String @map("space_id")
|
|
userId String @map("user_id")
|
|
createdAt DateTime @default(now()) @map("created_at")
|
|
updatedAt DateTime @updatedAt @map("updated_at")
|
|
role SpaceMemberRole @default(MEMBER)
|
|
|
|
space Space @relation(fields: [spaceId], references: [id], onDelete: Cascade)
|
|
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
|
|
@@unique([spaceId, userId])
|
|
@@index([spaceId])
|
|
@@map("space_members")
|
|
}
|