Рубрики
Без рубрики

Реализация моделей класса Наследование в SQLALCHEMY

Реализация моделей класса Наследование в SQLALCHEMY (с колбой) SQLalchemy – это объект … Помечено SQL, база данных, SQLALCHEMY, PYTHON.

Реализация моделей класса наследования в SQLalchemy (с колбой)

SQLALCHEMY – это объектно-реляционное отображение (ORM), сделанное для языка программирования Python. ОРМС в теории позволяют программистам абстрагировать SQL. Проще говоря, они позволяют нам взаимодействовать с базой данных с использованием чисто Python (объекты/функции). Я буду использовать расширение Flask-SQLALCHEMY для моих примеров.

Каждая таблица называется моделью, каждая модель – просто просто класс Python, и каждый атрибут этого класса становится столбцом в таблице SQL. База данных состоит из нескольких моделей. Так же, как и с обычными моделями Python, могут наследовать от других моделей и поделиться атрибутами с родительской моделью. Это очень полезно, если у вас будут модели, которые будут хранить аналогичные типы данных.

models.py

models.py

Посмотрите на Models.py Модуль, мы определяем абстрактный класс под названием Pets. Что означает SQLALCHEMY, не создаст таблицу для этой модели. Наши следующие две модели кошек и собак наследуют все атрибуты образуют домашние животные. Таким образом, кошки и собачьи столы будут иметь колонку называемого именем, ценой и породу.

Основным преимуществом этого является, что если вам когда-либо нужно изменить модели, которые вам просто должны изменить его один раз. Чем больше моделей, наследующих от базовой модели.

__init__.py.

__init__.py.

Выше приведен пример __init__.py Файл для инициализации базы данных и создайте все таблицы базы данных из моделей. Это люди, спасибо за чтение.

Пожалуйста, обратите внимание на Есть и другие способы реализации наследства с SQLALCHEMY, я лично нашел таким образом, чтобы стать самым чистым с точки зрения читаемости кода.

Приложение

Оригинал: “https://dev.to/ghost/implementing-model-class-inheritance-in-sqlalchemy-3f05”