Главная | Архив новостей | Общение | Площадка | Примеры OpenID
Хостинг Django от «Джино»
Оглавление

Как Django обрабатывает запрос

Перед тем как приняться за вторую функцию представления, давайте изучим немного подробнее то, как работает Django. Конкретно, что делает Django в тот момент, когда вы запрашиваете страницу через http://127.0.0.1:8000/hello/?

Всё начинается с файла конфигурации. Когда вы запускаете python manage.py runserver, скрипт ищет файл с именем settings.py в том же каталоге, в котором находится файл manage.py. Данный файл содержит всю информацию о конфигурации конкретного проекта Django, все параметры указаны большими буквами: TEMPLATE_DIRS, DATABASE_NAME и так далее. Самый главный параметр называется ROOT_URLCONF. Этот параметр указывает Django какой модуль Python следует использовать в качестве файла привязки для данного сайта.

Запомните, что django-admin.py startproject создаёт файлы settings.py и urls.py. Параметр ROOT_URLCONF созданного файла настроек указывает на созданный файл привязок. Откройте settings.py и удостоверьтесь сами. Там должны быть строчка:

ROOT_URLCONF = 'mysite.urls'

Она соответствует файлу mysite/urls.py.

Когда приходит запрос на определённый URL — скажем, на /hello/ — Django загружает файл привязок, указанный параметром ROOT_URLCONF. Затем проверяет каждый шаблон этого файла, по-порядку, сравнивая запрошенный URL с шаблонами, пока не найдёт подходящий. Если совпадение найдено, Django вызывает функцию представления, ассоциированную с данным шаблоном, передавая ей объект HttpRequest в качестве первого аргумента. (Мы рассмотрим особенности HttpRequest позже.)

Как мы видели в нашем первом примере представления, функция представления должна возвращать HttpResponse. После того как она это сделала, Django делает всё остальное: преобразовывает объект Python в соответствующий отклик с необходимыми HTTP заголовками и телом (т.е., содержимым страницы).

В общем:

  • Приходит запрос к /hello/.

  • Django определяет корневой файл привязки, с помощью параметра конфигурации ROOT_URLCONF.

  • Django просматривает файл привязки в поисках первого шаблона, который совпадёт с запрошенным URL.

  • Если такой шаблон найден, Django вызывает ассоциированную с ним функцию представления.

  • Функция представления возвращает HttpResponse.

  • Django преобразовывает HttpResponse в соответствующий HTTP отклик, который реализует страницу.

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


Увидели ошибку?
Выделите её мышкой и нажмите
Ctrl-Enter
Обработано:
504 49 130 71

Версия книги
1.0 2.0
Версия 2.0 в процессе перевода!

Мой луч
Многообразие света

Полезное
Актуальные вакансии, Python работа для python-разработчиков.


Скачать в формате
CHM от 2 сентября

Заказать PDF файл можно через почту, чат, джаббер. Всего 2WMZ. Содержимое точно соответствует содержимому сайта.
Чем чаще заказываете — тем больше перевожу.

Русская группа

на поддержку перевода
Яндекс Яндекс.Деньги Хочу такую же кнопку
Ускорить процесс перевода!
R130494980980
Z425285133788
E112528079659
U327380922061

Книга помогла реализовать:
Проект «Мой луч»
АРМ УФМС.


Мой вебсайт стоит666 337,31 руб

© 2008-2009 Ruslan Popov @ gmail.com Powered by Django 1.1 beta 1 SVN-11114
Главная | Архив новостей | Общение | Площадка | Примеры OpenID