Шаблон MVC разработки
Главной идеей в Django является разделение задач, разберем на примере с предыдущей главы:
Файл
models.py
содержит описание таблицы базы данных, представленное в виде класса Python. Такой класс называется моделью. С помощью данного класса вы можете создавать, получать, обновлять и удалять записи в таблице вашей базы данных, используя простой код на языке Python вместо использования повторяющихся SQL команд.Файл
views.py
содержит логику отображения страницы в функцииlatest_books()
. Такая функция называетсяпредставлением.Файл
urls.py
определяет какое именно представление будет вызвано для URL, заданного в виде шаблона. В данном случае URL/latest/будет обработано функциейlatest_books()
. Другими словами, если имя вашего домена example.com, то любой доступ кhttp://example.com/latest/
будет обработан функциейlatest_books()
.Файл
latest_books.html
является HTML шаблоном, который описывает дизайн страницы. Он использует шаблонный язык с основными логическими операторами —.
Объединённые вместе, эти компоненты приложения следуют шаблону Модель-Представление-Контроллер.
MVC определяет способ разработки программного обеспечения при котором код для определения и доступа к данным (модель) отделён от логики приложения (управление), которая в свою очередь отделена от интерфейса пользователя (представление).
Основное преимущество такого подхода заключается в свободе объединения этих компонентов.
Следовательно, каждая отдельная часть приложения, созданного с помощью Django, имеет одно назначение и может быть изменена независимо, т.е., без влияния на остальные компоненты.
Например, разработчик может изменить URL для данной части приложения без изменения остального кода. Дизайнер может изменить HTML страницы без внесения изменений в код, который отображает страницу. Администратор базы данных может переименовать таблицу и определить эти изменения в одном месте, вместо того, чтобы искать и вносить изменения во множество файлов.