from sqlalchemy.orm import relationship from sqlalchemy import ( Column, Integer, DateTime, Unicode, PickleType, ForeignKey) from szurubooru.db.base import Base class Snapshot(Base): __tablename__ = 'snapshot' OPERATION_CREATED = 'created' OPERATION_MODIFIED = 'modified' OPERATION_DELETED = 'deleted' OPERATION_MERGED = 'merged' snapshot_id = Column('id', Integer, primary_key=True) creation_time = Column('creation_time', DateTime, nullable=False) operation = Column('operation', Unicode(16), nullable=False) resource_type = Column( 'resource_type', Unicode(32), nullable=False, index=True) resource_pkey = Column( 'resource_pkey', Integer, nullable=False, index=True) resource_name = Column( 'resource_name', Unicode(64), nullable=False) user_id = Column( 'user_id', Integer, ForeignKey('user.id', ondelete='set null'), nullable=True) data = Column('data', PickleType) user = relationship('User')