forget-cancellare-vecchi-toot/model.py

40 lines
1.2 KiB
Python
Raw Normal View History

2017-07-25 10:10:44 +02:00
from datetime import datetime
2017-07-25 09:52:24 +02:00
from app import db
2017-07-25 10:10:44 +02:00
class TimestampMixin(object):
created_at = db.Column(db.DateTime, default=datetime.utcnow, nullable=False)
updated_at = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False)
2017-07-25 09:52:24 +02:00
2017-07-25 10:10:44 +02:00
class User(db.Model, TimestampMixin):
2017-07-25 09:52:24 +02:00
__tablename__ = 'users'
display_name = db.Column(db.String)
id = db.Column(db.Integer, primary_key=True)
2017-07-25 10:10:44 +02:00
class Account(db.Model, TimestampMixin):
2017-07-25 09:52:24 +02:00
user = db.relationship(User)
user_id = db.Column(db.Integer, db.ForeignKey('users.id'))
remote_id = db.Column(db.String, primary_key=True)
service = db.Column(
db.Enum("twitter", name="enum_services")
, primary_key=True)
credentials = db.Column(db.JSON)
policy_enabled = db.Column(db.Boolean, default=False)
policy_keep_younger = db.Column(db.Interval)
policy_keep_latest = db.Column(db.Integer)
policy_delete_every = db.Column(db.Interval)
policy_ignore_favourites = db.Column(db.Boolean, default=True)
2017-07-25 09:52:24 +02:00
2017-07-25 10:10:44 +02:00
class Session(db.Model, TimestampMixin):
2017-07-25 09:52:24 +02:00
__tablename__ = 'sessions'
user = db.relationship(User)
user_id = db.Column(db.Integer, db.ForeignKey('users.id'))
token = db.Column(db.String, primary_key=True)