Использование модели наследования
Джанго поддерживает модель наследования. Она работают аналогичным образом в стандартном наследовании классов в Python. Джанго предлагает следующие три варианта использования модели наследования:
- Abstract models(Абстрактные модели): Полезно, когда требуется поместить некоторую общую информацию в несколько моделей. Для абстрактной модели не создается таблица базы данных.
- Multi-table model inheritance(Multi-table наследование): Применимо, когда каждая модель в иерархии считается полной самостоятельной моделью. Для каждой модели создается таблица базы данных.
- Proxy models(Proxy-модели): Полезно, когда требуется изменить поведение модели, например, чтобы включить дополнительные методы, изменить диспетчер по умолчанию или использовать различные мета параметры. Для прокси-моделей не создается таблица базы данных.
Давайте взглянем на каждую из них.