from sqlalchemy import Column, ForeignKey, Integer, String, Table from sqlalchemy.orm import relationship from database import Base video_profiles = Table( "video_profiles", Base.metadata, Column("video_id", Integer, ForeignKey("videos.id", ondelete="CASCADE")), Column("profile_id", Integer, ForeignKey("profiles.id", ondelete="CASCADE")), ) class Profile(Base): __tablename__ = "profiles" id = Column(Integer, primary_key=True, autoincrement=True) name = Column(String, nullable=False, unique=True) class Video(Base): __tablename__ = "videos" id = Column(Integer, primary_key=True, autoincrement=True) title = Column(String, nullable=False) youtuber = Column(String, nullable=False) thumbnail_url = Column(String, nullable=False) youtube_url = Column(String, nullable=False) file_path = Column(String, nullable=True) profiles = relationship("Profile", secondary=video_profiles, backref="videos")