23 lines
920 B
Python
23 lines
920 B
Python
from sqlalchemy import Column, Integer, Boolean, String, DateTime, ForeignKey
|
|
from sqlalchemy.sql import func
|
|
from sqlalchemy.orm import relationship
|
|
|
|
from app.domain.models import Base
|
|
|
|
|
|
class Notification(Base):
|
|
__tablename__ = 'notifications'
|
|
|
|
id = Column(Integer, primary_key=True, autoincrement=True)
|
|
text = Column(String, nullable=False)
|
|
datetime_notification = Column(DateTime, nullable=False, default=func.utcnow)
|
|
is_read = Column(Boolean, nullable=False, default=False)
|
|
|
|
user_id = Column(Integer, ForeignKey('users.id'), nullable=False)
|
|
type_id = Column(Integer, ForeignKey('notification_types.id'), nullable=False)
|
|
course_id = Column(Integer, ForeignKey('courses.id'))
|
|
|
|
user = relationship('User', back_populates='notifications')
|
|
type = relationship('NotificationType', back_populates='notifications')
|
|
course = relationship('Course', back_populates='notifications')
|