blob: 7243684af3c2eb84fb702f77474c59a171f29fa8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
from datetime import datetime
from sqlalchemy import JSON
from sqlalchemy.orm import Mapped, mapped_column
from models import BaseTable, RichText
class Announcement(BaseTable):
__tablename__ = "announcement"
id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True)
__message: Mapped[str] = mapped_column("message", JSON())
datetime: Mapped[datetime]
@property
def message(self) -> RichText:
return RichText.model_validate_json(self.__message)
@message.setter
def message(self, value: RichText) -> None:
self.__message = value.model_dump_json()
|