feat: mixins

This commit is contained in:
2025-08-05 15:48:03 +04:00
parent be1ea4009d
commit 3e2839e725
5 changed files with 33 additions and 41 deletions

18
models/mixins.py Normal file
View File

@ -0,0 +1,18 @@
from datetime import datetime
from sqlalchemy.orm import Mapped, mapped_column
class IdMixin:
id: Mapped[int] = mapped_column(primary_key=True)
class SoftDeleteMixin:
is_deleted: Mapped[bool] = mapped_column(
default=False,
nullable=False,
)
class CreatedAtMixin:
created_at: Mapped[datetime] = mapped_column(nullable=False)