class User(db.Model, UserMixin): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(10), unique=True, nullable=False) password = db.Column(db.String(50), nullable=False) messages = db.relationship('Message', backref='sender', lazy=True) def __repr__(self): return str({"username": self.username})
class User(db.Model): __tablename__ = "users" id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(50), unique=True) @staticmethod def generate_token(username): payload = {'iat': datetime.datetime.utcnow(), 'sub': username} return jwt.encode(payload, app.config['SECRET_KEY']) @staticmethod def decode_auth_token(auth_token): payload = jwt.decode(auth_token, app.config['SECRET_KEY'], "HS256") return payload['sub']
class Message(db.Model): __tablename__ = "messages" id = db.Column(db.Integer, primary_key=True) sender = db.Column(db.String) receiver = db.Column(db.String) content = db.Column(db.String, nullable=False) subject = db.Column(db.String, nullable=False) read = db.Column(db.Boolean, default=False) date = db.Column(db.DateTime, default=datetime.datetime.utcnow) def __repr__(self): return f"Message by: {self.sender} to {self.receiver}, sent at {self.date} with subject of {self.subject}" \ f" and content of {self.content}"
class Message(db.Model): id = db.Column(db.Integer, primary_key=True) receiver = db.Column(db.String(10), nullable=False) subject = db.Column(db.String(100), nullable=False) creation_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) message_content = db.Column(db.Text, nullable=False) is_read = db.Column(db.Boolean, default=False, nullable=False) receiver_delete = db.Column(db.Boolean, default=False, nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) def __repr__(self): return str({ "subject": self.subject, "content": self.message_content, "creation date": str(self.creation_date) })