backend/prisma/schema.prisma
2022-11-01 17:49:53 +01:00

75 lines
1.4 KiB
Plaintext

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id String @id @default(cuid())
email String
password String
organization Organization? @relation(fields: [organizationId], references: [id])
organizationId String?
purchasedCourses Course[]
}
model Teacher {
id String @id @default(cuid())
username String @unique
first_name String
last_name String
email String @unique
password String
organizations Organization[]
created_at DateTime @default(now())
updated_at DateTime @updatedAt
}
model Organization {
id String @id @default(cuid())
name String @unique
teacherId String
teacher Teacher @relation(fields: [teacherId], references: [id])
courses Course[]
users User[]
}
model Course {
id String @id @default(cuid())
name String
price Int
organization Organization @relation(fields: [organizationId], references: [id])
organizationId String
lessons Lesson[]
users User[]
@@unique([name, organizationId])
}
model Lesson {
id String @id @default(cuid())
name String
description String
type LessonTypes
course Course @relation(fields: [courseId], references: [id])
courseId String
}
enum LessonTypes {
VIDEO
AUDIO
TEXT
}