from sqlalchemy import Column, Integer, String, DateTime, Boolean from sqlalchemy.orm import relationship from datetime import datetime from .base import Base class Message(Base): """Модель для хранения сообщений для рассылки""" __tablename__ = 'messages' id = Column(Integer, primary_key=True) text = Column(String, nullable=False) # Текст сообщения title = Column(String, nullable=False) # Название/описание сообщения is_active = Column(Boolean, default=True) # Активно ли сообщение parse_mode = Column(String, default='HTML') # Режим парсинга (HTML, Markdown, None) created_at = Column(DateTime, default=datetime.utcnow) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow) # Связь со многими группами (через таблицу связей) groups = relationship('MessageGroup', back_populates='message', cascade='all, delete-orphan') def __repr__(self): return f''