from datetime import datetime from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column from sqlalchemy import DateTime MYSQL_TABLE_ARGS = {"mysql_charset": "utf8mb4", "mysql_collate": "utf8mb4_unicode_ci"} class Base(DeclarativeBase): pass class TimestampMixin: created_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, nullable=False) updated_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False)