nexus-ai / models /message.py
Jeetandar N Silwani
Initial Nexus AI release
7ee22ad
Raw History Blame Contribute Delete
952 Bytes
from database import db
from datetime import datetime, timezone
class Message(db.Model):
__tablename__ = "messages"
id = db.Column(db.Integer, primary_key=True)
chat_id = db.Column(db.Integer, db.ForeignKey("chats.id", ondelete="CASCADE"), nullable=False, index=True)
user_id = db.Column(db.Integer, db.ForeignKey("users.id", ondelete="CASCADE"), nullable=False, index=True)
role = db.Column(db.String(20), nullable=False)
content = db.Column(db.Text, nullable=False)
message_type = db.Column(db.String(20), default="text")
created_at = db.Column(db.DateTime, default=lambda: datetime.now(timezone.utc))
def to_dict(self):
return {
"id": self.id,
"chat_id": self.chat_id,
"role": self.role,
"content": self.content,
"message_type": self.message_type,
"created_at": self.created_at.isoformat() if self.created_at else None
}