From bb0d10748e83eccd4aedbbd53f2910d7d09d76d2 Mon Sep 17 00:00:00 2001 From: Xevion Date: Sun, 19 Jan 2020 17:02:57 -0600 Subject: [PATCH] begin adding initial database models for website --- app/models.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/app/models.py b/app/models.py index e69de29..94adffa 100644 --- a/app/models.py +++ b/app/models.py @@ -0,0 +1,33 @@ +from app import db, login + +class Season(db.Model): + id = db.Column(db.Integer, primary_key=True) + episode = db.Column(db.Integer) + + def __init__(self, **kwargs): + super(Season, self).__init__(**kwargs) + + + @property + def episodes(self): + """returns a List of Episodes under this Season""" + pass + + @property + def characters(self, sort): + """returns a List of Characters under this Season, sorted by number of spoken lines""" + pass + +class Episode(db.Model): + id = db.Column(db.Integer, primary_key=True) + season_id = db.Column(db.Integer, db.ForeignKey('season.id')) + +class Section(db.Model): + id = db.Column(db.Integer, primary_key=True) + quotes = db.relationship('Quote', backref='section', lazy='dynamic') + +class Quote(db.Model): + id = db.Column(db.Integer, primary_key=True) + section_id = db.Column(db.Integer, db.ForeignKey('section.id')) + speaker = db.Column(db.String(32)) + text = db.Column(db.String(512)) \ No newline at end of file