import uuid from datetime import datetime from sqlalchemy import Column, DateTime from sqlalchemy.dialects.postgresql import UUID from sqlalchemy.orm import declarative_base Base = declarative_base() class BaseDBModel(Base): __abstract__ = True id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4, index=True, nullable=False) created_at = Column(DateTime, default=datetime.utcnow, nullable=False, index=True) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False)