Заголовки HTTP

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

Читать

Применение вложенных запросов в инструкции WHERE

Выведем имя пользователя, сделавшего заказ под номером 2, с помощью вложенного запроса:

SELECT `name` FROM `users_table`

WHERE `id_user` = (SELECT `id_user` FROM `orders_table` WHERE `id_orders` = 2);

/* Выведет: Петров */

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

Читать

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

Прежде чем переходить к следующей функции представления, остановимся ненадолго и поговорим о том, как работает Django. Точнее, ответим на вопрос, что происходит за кулисами, когда вы видите сообщение «Hello world» в ответ на запрос к URL-адресу http://127.0.0.1:8000/hello/ в своем броузере.

Читать

Простая проверка данных Django

Наш пример все еще слишком примитивен, особенно в части проверки данных; мы лишь проверяем, что поисковый запрос не пуст. Во многих HTML-формах производится гораздо более полная проверка данных. Все мы видели на сайтах такие сообщения об ошибках:

•      Введите допустимый адрес электронной почты, ‘foo’ – недопустимый адрес.

Читать

Усовершенствование примера обработки формы

Как обычно, мы начали с простейшего работающего примера. А теперь рассмотрим некоторые проблемы и покажем, как их можно решить.

Во-первых, обработка пустого запроса в представлении searchQ явно недостаточна – мы просто выводим сообщение «Введите поисковый запрос», заставляя пользователя нажать кнопку «Назад» в броузере. Это крайне непрофессионально, и, если вы сделаете нечто подобное в действующем приложении, вас отлучат от Django.

Читать

Пример обработки простой формы

Все на том же примере базы данных, содержащей информацию о книгах, авторах и издательствах, мы создадим простое представление, которое позволит отыскать книгу по названию.

В общем случае, с точки зрения разработки, у формы есть две стороны: пользовательский HTML-интерфейс и код для обработки отправленных данных на стороне сервера. С первой частью все просто, вот представление для отображения формы поиска:

Читать