Backend-B2V / backend /app /models /chat_message.py
Muhammad-Mehdi's picture
Backend and remotion-video for HF Space
cfe45d5
Raw
History Blame Contribute Delete
840 Bytes
import enum
from datetime import datetime
from sqlalchemy import String, Text, Enum, ForeignKey, DateTime
from sqlalchemy.orm import Mapped, mapped_column, relationship
from app.database import Base
class MessageRole(str, enum.Enum):
USER = "user"
ASSISTANT = "assistant"
class ChatMessage(Base):
__tablename__ = "chat_messages"
id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True)
project_id: Mapped[int] = mapped_column(ForeignKey("projects.id"), nullable=False)
role: Mapped[MessageRole] = mapped_column(Enum(MessageRole), nullable=False)
content: Mapped[str] = mapped_column(Text, nullable=False)
created_at: Mapped[datetime] = mapped_column(
DateTime, default=datetime.utcnow
)
# Relationships
project = relationship("Project", back_populates="chat_messages")