New programming screen
This commit is contained in:
+32
-1
@@ -7,8 +7,10 @@ from sqlalchemy import (
|
||||
Boolean,
|
||||
Date,
|
||||
JSON,
|
||||
ForeignKey,
|
||||
UniqueConstraint,
|
||||
)
|
||||
from sqlalchemy.orm import DeclarativeBase
|
||||
from sqlalchemy.orm import DeclarativeBase, relationship
|
||||
|
||||
|
||||
class Base(DeclarativeBase):
|
||||
@@ -27,6 +29,35 @@ class Program(Base):
|
||||
genre = Column(String(80), nullable=False)
|
||||
|
||||
|
||||
class Show(Base):
|
||||
__tablename__ = "shows"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
title = Column(String(200), nullable=False)
|
||||
description = Column(Text, nullable=False)
|
||||
host = Column(String(100), nullable=False)
|
||||
genre = Column(String(80), nullable=False)
|
||||
show_art_url = Column(String(500), nullable=True)
|
||||
hero_image_url = Column(String(500), nullable=True)
|
||||
display_order = Column(Integer, nullable=False, default=0)
|
||||
active = Column(Boolean, default=True)
|
||||
schedules = relationship("ShowSchedule", back_populates="show", cascade="all, delete-orphan")
|
||||
|
||||
|
||||
class ShowSchedule(Base):
|
||||
__tablename__ = "show_schedules"
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
show_id = Column(Integer, ForeignKey("shows.id", ondelete="CASCADE"), nullable=False)
|
||||
day_of_week = Column(Integer, nullable=False)
|
||||
time = Column(String(10), nullable=False)
|
||||
show = relationship("Show", back_populates="schedules")
|
||||
|
||||
__table_args__ = (
|
||||
UniqueConstraint("show_id", "day_of_week", "time", name="uq_show_sched"),
|
||||
)
|
||||
|
||||
|
||||
class Event(Base):
|
||||
__tablename__ = "events"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user