Получить TypedDict из декларативного класса SQLAlchemyPython

Программы на Python
Anonymous
Получить TypedDict из декларативного класса SQLAlchemy

Сообщение Anonymous »

У меня есть несколько определений классов ORM, представляющих таблицы в моей базе данных.

Код: Выделить всё

import datetime
from typing import Optional
from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column

class Base(DeclarativeBase):
pass

# ORM class
class Predictions(Base):
__tablename__ = 'predictions'
uid: Mapped[str] = mapped_column(primary_key=True)
event_date: Mapped[datetime.date]
location: Mapped[Optional[str]]

# ... other tables
Проблема в том, что мне нужны эквивалентные определения типов TypedDict для каждой таблицы, поскольку я буду возвращать запрошенные строки как dicts:

Код: Выделить всё

# desired TypedDict
class PredictionsDict(TypedDict):
uid: str
event_date: datetime.date
location: Optional[str]
Как я могу автоматически генерировать определения типов (которые будут подбираться intellisense) для TypedDicts без синхронизации нескольких классов вручную? Я использую SQLAlchemy 2 и Python 3.9.


Подробнее здесь: https://stackoverflow.com/questions/790 ... tive-class

Вернуться в «Python»