Files
aicheckv2/app/db/db_base.py
2025-02-13 16:29:28 +08:00

21 lines
650 B
Python

from sqlalchemy.ext.declarative import declarative_base, declared_attr
from sqlalchemy.orm import Mapped, mapped_column
import datetime
Base = declarative_base()
class DbCommon(Base):
__abstract__ = True
id: Mapped[int] = mapped_column(primary_key=True)
create_time: Mapped[datetime.datetime] = mapped_column(default=datetime.datetime.utcnow())
update_time: Mapped[datetime.datetime] = mapped_column(default=datetime.datetime.utcnow(), onupdate=datetime.datetime.utcnow())
def keys(self):
return ["id", "create_time", "update_time"]
@declared_attr
def __tablename__(cls):
return cls.__name__.lower()