51 lines
1.8 KiB
Python
51 lines
1.8 KiB
Python
from the_works.database import db
|
|
from sqlalchemy.orm import relationship
|
|
|
|
class Text(db.Model):
|
|
__table__ = db.Model.metadata.tables['Text']
|
|
reihe = relationship("Reihe", back_populates="text")
|
|
textform = relationship("Textform", back_populates="text")
|
|
sprache = relationship("Sprache", back_populates="text")
|
|
|
|
def __repr__(self):
|
|
return f"Text(ID={self.ID}, Titel={self.Titel}, Untertitel={self.Untertitel}, Reihe={self.Reihe})"
|
|
|
|
class Werk(db.Model):
|
|
__table__ = db.Model.metadata.tables['Werk']
|
|
reihe = relationship("Reihe", back_populates="werk")
|
|
verlag = relationship("Verlag", back_populates="werk")
|
|
werksform = relationship("Werksform", back_populates="werk")
|
|
|
|
def __repr__(self):
|
|
return f"Werk(ID={self.ID}, Titel={self.Titel}, Untertitel={self.Untertitel}, Erscheinungsdatum={self.Erscheinungsdatum})"
|
|
|
|
class Reihe(db.Model):
|
|
__table__ = db.Model.metadata.tables['Reihe']
|
|
text = relationship("Text", back_populates="reihe")
|
|
werk = relationship("Werk", back_populates="reihe")
|
|
verlag = relationship("Verlag", back_populates="reihe")
|
|
|
|
class Verlag(db.Model):
|
|
__table__ = db.Model.metadata.tables['Verlag']
|
|
werk = relationship("Werk", back_populates="verlag")
|
|
reihe = relationship("Reihe", back_populates="verlag")
|
|
|
|
class Sprache(db.Model):
|
|
__table__ = db.Model.metadata.tables['Sprache']
|
|
text = relationship("Text", back_populates="sprache")
|
|
|
|
class Textform(db.Model):
|
|
__table__ = db.Model.metadata.tables['Textform']
|
|
text = relationship("Text", back_populates="textform")
|
|
|
|
class Werksform(db.Model):
|
|
__table__ = db.Model.metadata.tables['Werksform']
|
|
werk = relationship("Werk", back_populates="werksform")
|
|
|
|
class Genre(db.Model):
|
|
__table__ = db.Model.metadata.tables['Genre']
|
|
|
|
class Pseudonym(db.Model):
|
|
__table__ = db.Model.metadata.tables['Pseudonym']
|
|
|