From 0a730ea1962522bf5fb2db41a87ac172dc51750e Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sat, 31 Jan 2015 18:17:03 -0500 Subject: Add Interest models Two new models: * Interest * UserInterest (through model) These allow us to record interests/passions and associate them with users. --- modules/interest/__init__.py | 0 modules/interest/models.py | 21 +++++++++++++++++++++ modules/user/models.py | 3 +++ 3 files changed, 24 insertions(+) create mode 100644 modules/interest/__init__.py create mode 100644 modules/interest/models.py (limited to 'modules') diff --git a/modules/interest/__init__.py b/modules/interest/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/modules/interest/models.py b/modules/interest/models.py new file mode 100644 index 0000000..d07ed7d --- /dev/null +++ b/modules/interest/models.py @@ -0,0 +1,21 @@ +from modules.shared.models import db + + +class Interest(db.Model): + id = db.Column(db.Integer, primary_key=True) + + name = db.Column(db.String(255), nullable=False, unique=True) + + created_at = db.Column(db.DateTime()) + updated_at = db.Column(db.DateTime()) + + +class UserInterest(db.Model): + id = db.Column(db.Integer, primary_key=True) + + user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True) + interest_id = db.Column(db.Integer, db.ForeignKey('interest.id'), + primary_key=True) + + created_at = db.Column(db.DateTime()) + updated_at = db.Column(db.DateTime()) diff --git a/modules/user/models.py b/modules/user/models.py index 0731a67..138651a 100644 --- a/modules/user/models.py +++ b/modules/user/models.py @@ -15,6 +15,9 @@ class User(db.Model): first_name = db.Column(db.String(50), nullable=False, default='') last_name = db.Column(db.String(50), nullable=False, default='') + interests = db.relationship('Interest', backref=db.backref('user', + lazy='dynamic')) + def is_active(self): return self.is_enabled -- cgit v1.2.3