Coverage for src/model/event/event.py : 94%
Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1from datetime import datetime
3from src import db
6class Event(object):
7 id = db.Column(db.Integer, primary_key=True, autoincrement=True)
8 occured_at = db.Column(db.DateTime, nullable=False,
9 default=datetime.utcnow)
10 # occured_by = user_id (but not a FK)
11 occured_by = db.Column(db.Integer, default=None)
12 object_id = db.Column(db.Integer, nullable=False)
15class ChangedEvent(Event, db.Model):
16 __tablename__ = "changed_event"
18 model_name = db.Column(db.String, nullable=False)
19 attribute_name = db.Column(db.String, nullable=False)
20 new_value = db.Column(db.Text, default=None)
23class DeletionEvent(Event, db.Model):
24 __tablename__ = "deletion_event"
26 model_name = db.Column(db.String, nullable=False)
28 def delete(self):
29 return self.__table__.insert().values(
30 object_id=self.content_id,
31 model_name=self.model_name,
32 )