init commit

This commit is contained in:
2025-12-18 05:55:32 +09:00
commit a6817e487e
72 changed files with 13847 additions and 0 deletions

23
app/models/message.py Normal file
View File

@@ -0,0 +1,23 @@
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'<Message {self.id} - {self.title}>'