Files
explainegy-nextjs/prisma/schema.prisma
2023-01-07 08:52:59 +01:00

70 lines
2.0 KiB
Plaintext

generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model Article {
id Int @id @default(autoincrement())
name String @unique
title String @unique
markdown String
contentTableEntries ContentTableEntry[]
categoryId Int?
category Category? @relation(fields: [categoryId], references: [id])
typeId Int?
type ArticleType? @relation(fields: [typeId], references: [id])
dateCreated DateTime @default(now())
dateUpdated DateTime @default(now())
}
model ContentTableEntry {
id Int @id @default(autoincrement())
title String
anchor String
orderIndex Int
articleId Int
article Article @relation(fields: [articleId], references: [id])
dateCreated DateTime @default(now())
dateUpdated DateTime @default(now())
}
model Category {
id Int @id @default(autoincrement())
name String @unique
title String @unique
color String @unique
svgId Int
svg Svg @relation(fields: [svgId], references: [id])
Article Article[]
dateCreated DateTime @default(now())
dateUpdated DateTime @default(now())
}
model ArticleType {
id Int @id @default(autoincrement())
name String @unique
title String @unique
Article Article[]
dateCreated DateTime @default(now())
dateUpdated DateTime @default(now())
}
model Image {
id Int @id @default(autoincrement())
name String @unique
url String @default("")
dateCreated DateTime @default(now())
}
model Svg {
id Int @id @default(autoincrement())
name String @unique
path String @default("")
viewbox String @default("0 0 512 512")
Category Category[]
}