Руководство по Django: сайт местной библиотеки

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

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

Обзор руководства

Добро пожаловать на руководство MDN "Сайт местной библиотеки" по фреймворку Django, который может использоваться для управления архивом библиотеки.

В цикле статей мы научимся:

  • При помощи Django создавать прототип сайта.
  • Запускать и останавливать сервер для разработки.
  • Создавать модели для представления данных.
  • Использовать админ-панель Django для управления сайтом
  • Создавать представления для того, чтобы формировать из данных ответы на различные запросы и превращать их в HTML разметку, которая будет отображаться в браузере.
  • Создавать маршруты, чтобы определённые URL адреса ассоциировались сервером с определёнными представлениями
  • Создавать авторизацию пользователей и сессии, чтобы управлять доступом к сайту.
  • Работать с формами.
  • Тестировать ваше веб-приложение.
  • Эффективно использовать средства безопасности Django.
  • Размещать ваш сайт в Сети.

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

Сайт местной библиотеки

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

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

  • В самом начале, мы создадим библиотеку, в которой пользователи смогут только просматривать доступные книги. Это позволит нам исследовать операции, которые присутствуют почти на каждом сайте: чтение и отображение информации из базы данных.
  • По мере продвижения, на сайте станут использоваться более продвинутые возможности Django. Например, мы сможем расширить библиотеку и позволить пользователям резервировать книги, чтобы показать как использовать формы и авторизацию.

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

Я застрял, где мне взять код?

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

Если вы застряли, то можете найти полноценную версию сайта на Github.

Подводя итоги

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