From 23a8a11f0d21cc1b7fb27752c20980b942fa5200 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Sat, 9 Jan 2016 23:42:55 +0100 Subject: Removed base 'Expense' class; introduce CategoryModel instead --- app/model.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/model.py b/app/model.py index ec555d3..5ae2ead 100644 --- a/app/model.py +++ b/app/model.py @@ -102,15 +102,12 @@ class Category (UserModel): return '' % self.name -class Expense (UserModel): +class CategoryModel (db.Model): """Abstract base class for expenses: Adds the common fields and establishes the connection to `Category`. """ __abstract__ = True - description = Column(db.Unicode(50)) - expense = ReqColumn(ExpNum) - @declared_attr def category_id(cls): return ReqColumn(db.Integer, db.ForeignKey(Category.id)) @@ -120,7 +117,9 @@ class Expense (UserModel): return db.relationship(Category, innerjoin = True) -class SingleExpense (Expense): +class SingleExpense (UserModel, CategoryModel): + description = Column(db.Unicode(50)) + expense = ReqColumn(ExpNum) year = ReqColumn(db.Integer) month = ReqColumn(db.SmallInteger) day = ReqColumn(db.SmallInteger) @@ -140,7 +139,9 @@ class SingleExpense (Expense): self.day = d.day -class ConstExpense (Expense): +class ConstExpense (UserModel, CategoryModel): + description = Column(db.Unicode(50)) + expense = ReqColumn(ExpNum) months = ReqColumn(db.SmallInteger) start = ReqColumn(db.Date, index = True) end = ReqColumn(db.Date, index = True) -- cgit v1.2.3