Atualizar app/models.py
This commit is contained in:
@@ -66,3 +66,36 @@ class AuditTrail(Base):
|
|||||||
action = Column(String)
|
action = Column(String)
|
||||||
details = Column(Text)
|
details = Column(Text)
|
||||||
timestamp = Column(DateTime, default=datetime.utcnow)
|
timestamp = Column(DateTime, default=datetime.utcnow)
|
||||||
|
|
||||||
|
# ***
|
||||||
|
|
||||||
|
# All comments are in English.
|
||||||
|
|
||||||
|
from sqlalchemy import Column, String, Text, DateTime, ForeignKey
|
||||||
|
from sqlalchemy.orm import declarative_base, relationship
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
Base = declarative_base()
|
||||||
|
|
||||||
|
class Conversation(Base):
|
||||||
|
__tablename__ = "conversations"
|
||||||
|
id = Column(String, primary_key=True)
|
||||||
|
title = Column(String)
|
||||||
|
messages = relationship("Message", back_populates="conversation")
|
||||||
|
|
||||||
|
class Message(Base):
|
||||||
|
__tablename__ = "messages"
|
||||||
|
id = Column(String, primary_key=True)
|
||||||
|
conversation_id = Column(String, ForeignKey("conversations.id"))
|
||||||
|
role = Column(String) # "user" or "assistant"
|
||||||
|
content = Column(Text)
|
||||||
|
created_at = Column(DateTime, default=datetime.utcnow)
|
||||||
|
conversation = relationship("Conversation", back_populates="messages")
|
||||||
|
|
||||||
|
class Attachment(Base):
|
||||||
|
__tablename__ = "attachments"
|
||||||
|
id = Column(String, primary_key=True)
|
||||||
|
conversation_id = Column(String, ForeignKey("conversations.id"))
|
||||||
|
filename = Column(String)
|
||||||
|
mime_type = Column(String)
|
||||||
|
data = Column(Text) # base64 or small text payload
|
||||||
|
|||||||
Reference in New Issue
Block a user