Продвинутый Django 5 для продолжающих

Прогресс по курсу:  0/193

2.11 Абстрактные модели
2 из 2 шагов пройдено

Что такое наследование в Python?

Чтобы понять абстрактную модель в Django, вы должны иметь представление о наследовании в Python, потому что абстрактная модель Django следует концепции наследования.

Наследование в Python — это процесс наследования или доступа к методам и свойствам других классов. В Python доступно несколько типов наследования, которые перечислены ниже.

  • Одиночное наследование
  • Множественное наследство
  • Многоуровневое наследование
  • Иерархическое наследование
  • Гибридное наследование

Существует два типа классов, доступных в родительском или базовом классе наследования и в дочернем или производном классе.

Родительский класс или базовый класс: — это класс, от которого наследуется, он также называется родительским классом.
Дочерний класс или производный класс: — это класс, который наследуется от другого класса. Его также называют производным классом.

 

Что такое наследование модели в Django?

Наследование моделей в Django почти такое же, как обычное наследование классов Python, потому что вся веб-инфраструктура Django построена на Python. В начале страницы следует следовать некоторым основным пунктам, что означает, что базовый класс должен быть подклассом класса django.db.models.Model.

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

Мы можем добиться наследования модели в Django тремя способами.

  • Использование абстрактного базового класса.
  • Использование прокси-модели.
  • Многотабличное наследование.

В этой статье мы рассмотрим только абстрактную модель, а остальные две обсудим в последующих руководствах.

 

Что такое абстрактный класс в Django?

Абстрактный класс в Django — это процесс размещения некоторой общей информации, которая должна быть одинаковой в других моделях. Вы можете создать абстрактный базовый класс Django, просто поместив abstract=True в класс Meta в модели Django. Абстрактный базовый класс не будет создавать никаких таблиц в базе данных, он просто будет делиться полями с другими моделями, унаследованными от него.


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