🗃️ db: add producer schema and media relation
This commit is contained in:
@ -96,6 +96,7 @@ model User {
|
|||||||
following UserFollow[] @relation("UserFollowFollower")
|
following UserFollow[] @relation("UserFollowFollower")
|
||||||
provisioned_as_admin ProvisionedUser[] @relation("ProvisionedUserAdmin")
|
provisioned_as_admin ProvisionedUser[] @relation("ProvisionedUserAdmin")
|
||||||
provisioned_as_user ProvisionedUser[] @relation("ProvisionedUserUser")
|
provisioned_as_user ProvisionedUser[] @relation("ProvisionedUserUser")
|
||||||
|
created_producers Producer[]
|
||||||
@@map("users")
|
@@map("users")
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -247,9 +248,9 @@ model Media {
|
|||||||
year Int? @db.SmallInt
|
year Int? @db.SmallInt
|
||||||
country Country? @relation(fields: [country_id], references: [id])
|
country Country? @relation(fields: [country_id], references: [id])
|
||||||
broadcast_day String? @db.VarChar(20)
|
broadcast_day String? @db.VarChar(20)
|
||||||
// producers MediaProducer[]
|
producers MediaProducer[]
|
||||||
// licensors MediaLicensor[]
|
licensors MediaLicensor[]
|
||||||
// studios MediaStudio[]
|
studios MediaStudio[]
|
||||||
// genres MediaGenre[]
|
// genres MediaGenre[]
|
||||||
// explicit_genres MediaExplicitGenre[]
|
// explicit_genres MediaExplicitGenre[]
|
||||||
// themes MediaTheme[]
|
// themes MediaTheme[]
|
||||||
@ -317,6 +318,54 @@ model MediaAgeRating {
|
|||||||
@@map("media_age_ratings")
|
@@map("media_age_ratings")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
model MediaProducer {
|
||||||
|
media Media @relation(fields: [media_id], references: [id])
|
||||||
|
producer Producer @relation(fields: [producer_id], references: [id])
|
||||||
|
|
||||||
|
media_id String @db.Uuid
|
||||||
|
producer_id String @db.Uuid
|
||||||
|
@@id([media_id, producer_id])
|
||||||
|
@@map("media_producers")
|
||||||
|
}
|
||||||
|
|
||||||
|
model MediaLicensor {
|
||||||
|
media Media @relation(fields: [media_id], references: [id])
|
||||||
|
licensor Producer @relation(fields: [licensor_id], references: [id])
|
||||||
|
|
||||||
|
media_id String @db.Uuid
|
||||||
|
licensor_id String @db.Uuid
|
||||||
|
@@id([media_id, licensor_id])
|
||||||
|
@@map("media_licensors")
|
||||||
|
}
|
||||||
|
|
||||||
|
model MediaStudio {
|
||||||
|
media Media @relation(fields: [media_id], references: [id])
|
||||||
|
studio Producer @relation(fields: [studio_id], references: [id])
|
||||||
|
|
||||||
|
media_id String @db.Uuid
|
||||||
|
studio_id String @db.Uuid
|
||||||
|
@@id([media_id, studio_id])
|
||||||
|
@@map("media_studios")
|
||||||
|
}
|
||||||
|
|
||||||
|
model Producer {
|
||||||
|
id String @id @db.Uuid @default(uuid(7))
|
||||||
|
mal_id Int @unique
|
||||||
|
type String @db.VarChar(24)
|
||||||
|
name String @db.VarChar(255)
|
||||||
|
url String? @db.VarChar(255)
|
||||||
|
created_by User @relation(fields: [created_by_id], references: [id])
|
||||||
|
created_at DateTime @default(now()) @db.Timestamptz()
|
||||||
|
updated_at DateTime @updatedAt @db.Timestamptz()
|
||||||
|
deleted_at DateTime? @db.Timestamptz()
|
||||||
|
created_by_id String @db.Uuid
|
||||||
|
|
||||||
|
media_producers MediaProducer[]
|
||||||
|
media_licensors MediaLicensor[]
|
||||||
|
media_studios MediaStudio[]
|
||||||
|
@@map("producers")
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user