amati/prisma/schema.prisma
2024-01-26 11:42:42 +07:00

49 lines
1.2 KiB
Plaintext

// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}
model User {
id String @id @default(cuid())
name String?
email String? @unique
emailVerified DateTime?
passwordHash String?
photoProfile UserPhotoProfiles?
roles Role[]
directPermissions Permission[]
}
model UserPhotoProfiles {
id String @id @default(cuid())
userId String @unique
path String
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
}
model Role {
id String @id @default(cuid())
code String @unique
name String
description String @default("")
isActive Boolean @default(false)
users User[]
permissions Permission[]
}
model Permission {
id String @id @default(cuid())
code String @unique
name String
description String @default("")
isActive Boolean @default(false)
roles Role[]
directUsers User[]
}