Ответ
Django построен на наборе основных классов, которые формируют его MVT (Model-View-Template) архитектуру и предоставляют ключевой функционал:
-
Модели (Models)
-
django.db.models.Model— базовый класс для определения структуры данных приложения. Каждая модель сопоставляется с таблицей в базе данных, а ее атрибуты — с полями таблицы. Это основа ORM в Django.from django.db import models class Product(models.Model): name = models.CharField(max_length=200) price = models.DecimalField(max_digits=10, decimal_places=2)
-
-
Представления (Views)
django.views.View— базовый класс для обработки HTTP-запросов. Позволяет обрабатывать разные HTTP-методы (GET, POST и др.) с помощью отдельных методов класса (get(),post()).-
django.views.generic.*(например,ListView,DetailView,CreateView) — классы-дженерики для выполнения типовых операций (отображение списка объектов, детальной информации, создание/редактирование), что значительно сокращает объем шаблонного кода.from django.views.generic import ListView from .models import Product class ProductListView(ListView): model = Product template_name = 'products/list.html'
-
Формы (Forms)
django.forms.Form— класс для создания, валидации и обработки HTML-форм, не связанных напрямую с моделями.django.forms.ModelForm— подклассForm, который автоматически создает поля формы на основе полей указанной модели Django, упрощая создание форм для CRUD-операций.
-
URL-маршрутизация
django.urls.pathиdjango.urls.re_path— функции для определения маршрутов URL и их сопоставления с представлениями (views). Являются основой диспетчера URL Django.
-
Администрирование
django.contrib.admin.ModelAdmin— класс для настройки отображения и поведения моделей в стандартной административной панели Django. Позволяет кастомизировать списки, фильтры, поиск и формы редактирования.
Эти классы составляют ядро большинства Django-приложений.