todo.sr.ht/todosrht/types/ticketseen.py

26 lines
783 B
Python
Raw Normal View History

import sqlalchemy as sa
import sqlalchemy_utils as sau
from srht.database import Base
2018-09-01 19:43:05 +02:00
from datetime import datetime
class TicketSeen(Base):
"""Stores the last time a user viewed this ticket. Calculates if comments have been seen."""
__tablename__ = 'ticket_seen'
2018-12-13 04:48:43 +01:00
user_id = sa.Column(sa.Integer,
sa.ForeignKey('user.id'),
primary_key=True)
user = sa.orm.relationship("User")
2018-12-13 04:48:43 +01:00
ticket_id = sa.Column(sa.Integer,
sa.ForeignKey('ticket.id', ondelete="CASCADE"),
primary_key=True)
ticket = sa.orm.relationship("Ticket", lazy="joined")
last_view = sa.Column(sa.DateTime,
nullable=False,
server_default=sa.sql.func.now())
def update(self):
2018-09-01 19:43:05 +02:00
self.last_view = datetime.utcnow()