from minibase.app import db, login_manager from datetime import datetime class Industries(db.Model): __tablename__ = 'industries' id = db.Column(db.Integer, nullable=False, primary_key=True) name = db.Column(db.String(50), nullable=False) description = db.Column(db.String(300), nullable=False) companies = db.relationship('Companies', backref='industry', lazy='dynamic') # returns a more information-rich, or official, string representation of an object def __repr__(self): return f"{self.name}" class Notes(db.Model): __tablename__ = 'notes' id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(75), nullable=False) content = db.Column(db.String(500), nullable=False) upload_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) last_update_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow, onupdate=datetime.utcnow) user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False) company_id = db.Column(db.Integer, db.ForeignKey('companies.id'), nullable=True) class Todos(db.Model): __tablename__ = 'todos' id = db.Column(db.Integer, primary_key=True) content = db.Column(db.String(350), nullable=False) upload_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) reminder_date = db.Column(db.DateTime, nullable=True) deadline_date = db.Column(db.DateTime, nullable=True) user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False) class Importances(db.Model): __tablename__ = 'importances' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(20), nullable=False) upload_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) reminder_date = db.Column(db.DateTime, nullable=True) deadline_date = db.Column(db.DateTime, nullable=True)