378
Глава 17 •
Работа с API
Итоги
В этой главе вы узнали, как использовать API для написания программ, авто-
матически собирающих необходимые данные и использующих полученную
информацию для создания визуализации. Мы использовали GitHub API для
получения информации о самых популярных проектах Python на GitHub, а также
в общих чертах рассмотрели API Hacker News. Вы узнали, как с помощью пакета
requests автоматически выдать вызов API к GitHub и как обработать результаты
этого вызова. Также были описаны некоторые средства конфигурации Pygal, по-
зволяющие выполнить дополнительную настройку внешнего вида создаваемых
диаграмм.
В последнем проекте мы используем Django для построения веб-приложения.
18
Знакомство
с Django
Современные веб-сайты в действительности представляют собой многофункцио-
нальные приложения, достаточно близкие к полноценным приложениям для
настольных систем. Python содержит богатый набор инструментов для постро-
ения веб-приложений. В этой главе вы научитесь использовать Django (
http://
djangoproject.com/
) для построения проекта Learning Log — сетевой журнальной
системы для отслеживания информации, полученной вами по определенной теме.
Мы напишем спецификацию для этого проекта, а затем определим модели для
данных, с которыми будет работать приложение. Мы воспользуемся администра-
тивной системой Django для ввода некоторых начальных данных, а затем научимся
писать представления и шаблоны, на базе которых Django будет строить страницы
нашего сайта.
Django представляет собой веб-инфраструктуру — набор инструментов для постро-
ения интерактивных веб-сайтов. Django может реагировать на запросы страниц,
упрощает чтение и запись информации в базы данных, управление пользователями
и многие другие операции. В главах 19 и 20 мы доработаем проект Learning Log,
а затем развернем его на сервере, чтобы вы (и ваши друзья) могли использовать их.
Подготовка
к созданию проекта
В начале работы над проектом необходимо описать проект в
спецификации
. Затем
вы создадите виртуальную среду для построения проекта.
Написание
спецификации
В полной спецификации описываются цели проекта, его функциональность,
а также внешний вид и интерфейс пользователя. Как и любой хороший проект
или бизнес-план, спецификация должна сосредоточиться на самых важных аспек-
тах и обеспечивать планомерную разработку проекта. Здесь мы не будем писать
полную спецификацию, а сформулируем несколько четких целей, которые будут
задавать направление процесса разработки. Вот как выглядит спецификация:
Мы напишем веб-приложение с именем Learning Log, при помощи которого пользователь сможет
вести журнал интересующих его тем и создавать записи в журнале во
время изучения каждой
темы . Домашняя страница Learning Log содержит описание сайта и приглашает пользователя заре-
гистрироваться либо ввести свои учетные данные . После успешного входа пользователь получает
Подготовка к созданию проекта
381
возможность создавать новые темы, добавлять новые записи, читать и редактировать существу-
ющие записи .
Во время изучения нового материала бывает полезно вести журнал того, что вы
узнали, — записи пригодятся для контроля и возвращения к необходимой инфор-
мации. Хорошее приложение повышает эффективность этого процесса.
Создание
виртуальной среды
Для работы с Django необходимо сначала создать виртуальную среду для работы.
Виртуальная среда
представляет собой подраздел системы, в котором вы можете
устанавливать пакеты в изоляции от всех остальных пакетов Python. Отделение
библиотек одного проекта от других проектов принесет пользу при развертывании
Learning Log на сервере в главе 20.
Создайте для проекта новый каталог с именем
learning_log
, перейдите в этот
каталог в терминальном режиме и создайте виртуальную среду. Если вы работаете
в Python 3, то сможете создать виртуальную среду следующей командой:
learning_log$
Достарыңызбен бөлісу: