Дублирование моделей sqlalchemy и схем pydantic

Рейтинг: 0Ответов: 0Опубликовано: 23.04.2023

Я делаю crud аккаунтов пользователей на fastapi. Есть модель:

class User(Base):
    __tablename__ = 'users'
    id: Mapped[Optional[int]] = mapped_column(primary_key=True)
    login: Mapped[str] = mapped_column(String(128), nullable=False, unique=True)
    pw: Mapped[str] = mapped_column(String(128), nullable=False)

и мне нужно написать схемы для crud операций, так должна выглядеть схема для обновления юзера

class UpdateUser(BaseModel):
    login: Optional[str]
    pw: Optional[str]

Т.к. crud схемы будут практически идентичны модели orm, назревает вопрос: как можно избежать дублирования моделей и схем? Как по мне это затрудняет рефакторинг в случае изменения модели orm

Ответы

Ответов пока нет.