From bc7f486aa7b543a934f4cf23dc80a95f44afcb64 Mon Sep 17 00:00:00 2001 From: Tolmachev Igor Date: Mon, 23 Mar 2026 00:07:08 +0300 Subject: Add initial database migration --- models/suggest.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 models/suggest.py (limited to 'models/suggest.py') diff --git a/models/suggest.py b/models/suggest.py new file mode 100644 index 0000000..1ba18a0 --- /dev/null +++ b/models/suggest.py @@ -0,0 +1,23 @@ +from sqlalchemy import JSON +from sqlalchemy.orm import Mapped, mapped_column +from sqlalchemy.sql.schema import ForeignKey + +from models import RichText, User +from models.base import BaseTable + + +class Suggest(BaseTable): + __tablename__ = "suggest" + + id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True) + user_id: Mapped[int] = mapped_column(ForeignKey(User.id)) + suggested_user_id: Mapped[int] + __message: Mapped[str] = mapped_column("message", JSON()) + + @property + def message(self) -> RichText: + return RichText.model_validate_json(self.__message) + + @message.setter + def message_set(self, value: RichText) -> None: + self.__message = value.model_dump_json() -- cgit v1.3