РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
261 of 711 menu

Класс registry

Класс registry представляет собой центральный реестр для хранения метаданных и сопоставлений декларативных моделей. Он связывает классы Python с таблицами базы данных и хранит информацию о маппингах. Первым параметром можно передать объект MetaData, который будет использоваться для хранения схемы базы данных.

Синтаксис

from sqlalchemy.orm import registry reg = registry(metadata=None)

Пример

Давайте создадим реестр и зарегистрируем в нем декларативную модель с помощью декоратора mapped:

<+python+> from sqlalchemy import Integer, String from sqlalchemy.orm import registry, mapped_column reg = registry() @reg.mapped class Article: __tablename__ = 'articles' id: int = mapped_column(Integer, primary_key=True) title: str = mapped_column(String) print(reg.mappers) <-python+>

Результат выполнения кода:

<+python+> {'Article': } <-python+>

Пример

Давайте получим доступ к метаданным через атрибут metadata и посмотрим список таблиц:

<+python+> from sqlalchemy import Integer, String from sqlalchemy.orm import registry, mapped_column reg = registry() @reg.mapped class Article: __tablename__ = 'articles' id: int = mapped_column(Integer, primary_key=True) title: str = mapped_column(String) print(reg.metadata.tables.keys()) <-python+>

Результат выполнения кода:

<+python+> dict_keys(['articles']) <-python+>

Пример

Давайте создадим базовый класс через метод generate_base и определим модель наследованием:

<+python+> from sqlalchemy import Integer, String from sqlalchemy.orm import registry, mapped_column reg = registry() Base = reg.generate_base() class Article(Base): __tablename__ = 'articles' id: int = mapped_column(Integer, primary_key=True) title: str = mapped_column(String) print(Article.__table__) <-python+>

Результат выполнения кода:

<+python+> articles <-python+>

Смотрите также

  • класс registry,
    который представляет реестр моделей
  • метод configure,
    который настраивает маппинги реестра
  • метод generate_base,
    который создает декларативный базовый класс
  • атрибут metadata,
    который хранит объект MetaData реестра
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить