Несколько слов об ошибке 404
Сейчас в конфигурации URL определен только один шаблон URL - для обработки запросов к URL /hello/. Но что произойдет, если в запросе будет указан какой-нибудь другой URL?
Для того чтобы разобраться в этом, запустите сервер разработки Django и попробуйте зайти, скажем, на страницу http://127.0.0.1:8000/goodbye/, http://127.0.0.1:8000,/hello./subdirectory/ или даже http://127.0.0.1:8000/ (в «корень» сайта). Вы увидите сообщение «Page not found» (Страница не найдена) (см. рис. 3,1). Django выводит это сообщение при обращении к адресам URL, отсутствующим в конфигурации.
Но на этой странице мы видим не только сообщение об ошибке 404. Здесь точно сказано, какая конфигурация URL была использована, и перечислены все представленные в ней образцы URL. Имея эту информацию, вы можете сказать, почему запрос к данному URL завершился ошибкой
404.
Естественно, это конфиденциальная информация, предназначенная только для разработчика. Вряд ли вы захотите сообщать ее всем и каждому, когда сайт заработает в нормальном режиме. Поэтому в таком виде страница «Page not found» отображается, только если проект Django работает в режиме отладки. Как отключить режим отладки, мы расскажем ниже. А пока просто запомните, что любой вновь созданный проект Django работает в режиме отладки, а если режим отладки отключен, то ответ с кодом 404 выглядит иначе.
Рис. 3.1. Страница Django с кодом ошибки 404
Несколько слов о корне сайта
Как было сказано в предыдущем разделе, при попытке обратиться к корню сайта http://127.0.0.1:8000/ вы увидите сообщение об ошибке 404. Сам
фреймворк Django ничего не добавляет в корень сайта; этот URL не считается каким-то особым случаем. Вы сами должны описать этот URL как один из шаблонов URL в конфигурации URL.
Такой шаблон URL, соответствующий корню сайта, выглядит довольно странно, поэтому о нем стоит упомянуть. Когда вы будете готовы реализовать представление для корня, используйте шаблон совпадающий с пустой строкой, например:
from mysite.views import hello, my_homepage_view
urlpatterns = patternsC’, ("*$’, my_homepage_view), U …
)
Источник: Головатый А., Каплан-Мосс Дж. Django. Подробное руководство, 2-е издание. - Пер. с англ. - СПб.: Символ- Плюс, 2010. - 560 е., ил.
Похожие посты:
- Пример: выявление тенденций (0)
- Авторитетные сайты ссылаются только на ценный материал (0)
- Ссылки даются на URL-адреса, а не на страницы (0)
- Выбор поставщика услуг по поисковой оптимизации сайта (0)
- Устранение отступа между элементом h1 и следующим за ним абзацем (0)
- Что такое режим совместимости и как его избежать (0)
- Задание разных таблиц стилей для Internet Explorer 6 и 7 (0)