class Item(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.Text, nullable=False) done = db.Column(db.Boolean, default=False) date_modified = db.Column(db.DateTime, default=datetime.now(kenyan_time), onupdate=datetime.now(kenyan_time)) date_created = db.Column(db.DateTime, default=datetime.now(kenyan_time)) bucketlist_id = db.Column(db.Integer, db.ForeignKey('bucketlist.id'), nullable=False) def save(self): db.session.add(self) db.session.commit() def delete(self): db.session.delete(self) db.session.commit() def __repr__(self): return '<Item %r>' % self.name def __str__(self): return '{0}'.format(self.name)
class Bucketlist(db.Model): """This class represents the bucketlist table.""" id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(255)) date_created = db.Column(db.DateTime, default=db.func.current_timestamp()) date_modified = db.Column(db.DateTime, default=db.func.current_timestamp(), onupdate=db.func.current_timestamp()) created_by = db.Column(db.Integer, db.ForeignKey('user.id')) items = db.relationship('Item', backref='bucketlist', cascade="all,delete") def __init__(self, name, created_by): """initialize with name.""" self.name = name self.created_by = created_by def save(self): db.session.add(self) db.session.commit() @staticmethod def get_all(): return Bucketlist.query.all() def delete(self): db.session.delete(self) db.session.commit() def __repr__(self): return "{}".format(self.name)
class BucketListItems(db.Model): """This class represents the items in the bucketlists""" id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(255)) date_created = db.Column(db.DateTime, default=db.func.current_timestamp()) date_modified = db.Column(db.DateTime, default=db.func.current_timestamp(), onupdate=db.func.current_timestamp()) achieved = db.Column(db.Boolean, default=False) bucketlist_id = db.Column(db.Integer, db.ForeignKey('bucketlist.id')) def __init__(self, name, achieved, bucketlist_id): self.name = name self.achieved = achieved self.bucketlist_id = bucketlist_id def save(self): db.session.add(self) db.session.commit() @staticmethod def get_all(): return BucketListItems.query.all() def delete(self): db.session.delete(self) db.session.commit() def __repr__(self): return "<Bucketlist Item: {}>".format(self.name)
class Bucketlist(db.Model): """This class represents the bucketlist table.""" __tablename__ = 'bucketlists' id = db.Column(db.Integer, primary_key=True) bucketlist_title = db.Column(db.String(100)) date_created = db.Column(db.DateTime, default=datetime.now) date_modified = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now) creator_id = db.Column(db.Integer, db.ForeignKey('user.id')) created_by = db.relationship('User', backref=db.backref('user', lazy='dynamic')) items = db.relationship('Item', backref=db.backref('bucketlists'), cascade="all, delete-orphan") def __repr__(self): """Return printable representation of the object.""" return "Bucketlist: %d" % self.bucketlist_title def save(self): """Save a bucketlist.""" db.session.add(self) db.session.commit() def delete(self): """Delete a bucketlist.""" db.session.delete(self) db.session.commit()
class BucketlistItem(db.Model): """ BucketlistItem model """ __tablename__ = 'items' item_id = db.Column(db.Integer, primary_key=True) item_title = db.Column(db.String(255)) item_description = db.Column(db.Text) done = db.Column(db.Boolean(), default=False) date_created = db.Column(db.DateTime, default=datetime.now) date_modified = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now) created_by = db.Column(db.Integer, db.ForeignKey("users.user_id")) user = db.relationship("Users", backref=db.backref("items", lazy="dynamic")) bucketlist_id = db.Column(db.Integer, db.ForeignKey("bucketlist.list_id")) def __repr__(self): return "<BucketListItem: %r>" % self.item_title
class Item(db.Model): """This class represents the items table.""" __tablename__ = 'items' id = db.Column(db.Integer, primary_key=True) item_name = db.Column(db.String(100)) description = db.Column(db.Text) is_completed = db.Column(db.Boolean, default=False) created_date = db.Column(db.DateTime, default=datetime.now) modified_date = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now) bucketlist_id = db.Column(db.Integer, db.ForeignKey('bucketlists.id')) def __repr__(self): """Return printable representation of the object.""" return "Item: %d" % self.item_name
class BucketList(db.Model): """Bucketlist model""" __tablename__ = 'bucketlist' list_id = db.Column(db.Integer, primary_key=True) list_title = db.Column(db.String(255)) list_description = db.Column(db.Text) date_created = db.Column(db.DateTime, default=datetime.now) date_modified = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now) # This Value is constrained to be the one of the remote column which is user.id (PK) created_by = db.Column(db.Integer, db.ForeignKey("users.user_id")) items = db.relationship("BucketlistItem", backref=db.backref("bucketlist")) users = db.relationship("Users", backref=db.backref("users", lazy="dynamic")) def __repr__(self): return "<BucketList: %r>" % self.list_title