BaseTracker/backend/prisma/schema.prisma

64 lines
1.6 KiB
Text

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id String @id @default(cuid())
username String @unique
passwordHash String
createdAt DateTime @default(now())
armyCategories ArmyCategory[]
bases Base[]
}
model ArmyCategory {
id String @id @default(cuid())
name String
createdAt DateTime @default(now())
user User @relation(fields: [userId], references: [id])
userId String
defenses Defense[]
@@unique([userId, name])
}
model Base {
id String @id @default(cuid())
title String
description String?
url String?
imageUrl String?
imagePath String?
isPrivate Boolean @default(false)
createdAt DateTime @default(now())
user User @relation(fields: [userId], references: [id])
userId String
defenses Defense[]
trophyResets TrophyReset[]
}
model TrophyReset {
id String @id @default(cuid())
trophiesAtStart Int
trophiesLost Int
createdAt DateTime @default(now())
base Base @relation(fields: [baseId], references: [id])
baseId String
}
model Defense {
id String @id @default(cuid())
stars Int
percent Int
trophies Int
createdAt DateTime @default(now())
base Base @relation(fields: [baseId], references: [id])
baseId String
armyCategory ArmyCategory? @relation(fields: [armyCategoryId], references: [id])
armyCategoryId String?
}