Улучшите внешний вид вашего приложения Django, разработав персонализированную страницу ошибки 404 вместо того, чтобы полагаться на обычную страницу по умолчанию.
Страницы ошибок распространены в веб-приложениях. Участники Django предоставили страницы по умолчанию для некоторых из этих ошибок, таких как ошибка 404 (не найдено). Но как разработчик, лучше иметь страницу с ошибкой, которая следует принципам дизайна остальной части вашего веб-приложения.
Создание пользовательской страницы 404 в Django
Ошибка 404 является частью нескольких Коды состояния HTTP используется браузером для указания ответа сервера на запросы браузера, сделанные пользователем. Django предоставляет шаблоны по умолчанию для некоторых из этих кодов состояния, и страница ошибки 404 по умолчанию в Django выглядит так:
Изображение выше выглядит некрасиво, и большинство компаний не с готовностью примут его на своем веб-сайте. Чтобы изменить эту страницу на пользовательскую страницу 404 по вашему выбору, вы должны выполнить шаги, перечисленные ниже.
Шаг 1. Создайте представление для обработки ошибки 404
Откройте свой просмотры.py файл и создайте представление для страницы ошибки 404. Это представление должно возвращать шаблон, содержащий дизайн вашей пользовательской страницы ошибки 404. Вот простое представление Django, которое вы можете использовать в своем проекте:
от django.shortcuts Импортировать оказывать
# пользовательское представление 404
дефcustom_404(запрос, исключение):
возвращаться оказывать (запрос, '404.html', статус=404)
Приведенный выше фрагмент кода представляет собой Функция Python (в данном случае предпочтительно называемое представлением Django), которое принимает два аргумента функции; запрос, и исключение. Второй аргумент —исключение— позволяет получить доступ к объекту исключения, вызвавшему ошибку 404.
Вам следует заменить «404.html» в приведенном выше представлении с правильным путем к странице шаблона HTML с ошибкой 404.
Шаг 2. Создайте шаблон для ошибки 404
Создайте новый HTML-файл, чтобы содержать собственный дизайн страницы с ошибкой 404. Дизайн должен соответствовать остальной части вашего приложения. Вот простой HTML-шаблон, который вы можете использовать в своем проекте. Вы должны изменить этот шаблон по своему усмотрению:
404.html шаблон
HTML>
<HTMLязык="ан">
<голова>
<метакодировка="УТФ-8">
<метаимя="окно просмотра"содержание="ширина = ширина устройства, начальный масштаб = 1,0">
<заголовок>404 Страница не найденазаголовок>
<связь
импортировать Bootstrap
href=" https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
отн = "таблица стилей"
целостность = "sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ"
перекрестное происхождение = "анонимный">
Пользовательские CSS
<стиль>
тело {
дисплей: гибкий;
flex-направление: столбец;
выравнивание содержимого: по центру;
выравнивание элементов: по центру;
высота: 100вх;
семейство шрифтов: Arial, без засечек;
}.контейнер {
выравнивание текста: по центру;
максимальная ширина: 600 пикселей;
}.эмодзи {
размер шрифта: 8rem;
нижняя граница: 20px;
}ч1 {
размер шрифта: 3rem;
нижняя граница: 20px;
}п {
размер шрифта: 1.5rem;
нижняя граница: 20px;
}
.btn {
размер шрифта: 1.25rem;
отступ: 10px 20px;
}
стиль>
голова>
<тело>
<дивсорт="контейнер">
<дивсорт="смайлики">😕див>
<h1>Ой! Страница не найденаh1>
<п>Мы не смогли найти страницу, которую вы искали.п>
<асорт="btn btn-основной"href="/">Вернуться на главнуюа>
див>
тело>
HTML>
Шаг 3: Измените файл URL вашего проекта
На уровне вашего проекта (где settings.py файл есть), откройте свой urls.py файл и укажите обработчику ошибки 404 представление, которое вы создали для обработки ошибки 404. Обработчик ошибки 404 вызывается обработчик404. В точку обработчик404 на ваш взгляд, вы должны следовать этому формату:
обработчик404 = 'app_name.views.custom_404_view_name'
Если ваше приложение называется рецепт, а вид называется custom_404, то вы должны изменить вышеуказанный формат следующим образом:
обработчик404 = 'рецепт.представления.custom_404'
Убедитесь, что вы делаете это на уровне проекта, а не на уровне приложения. Есть различия между проектом и приложением в Django.
Шаг 4. Проверьте свою новую страницу с ошибкой 404
Чтобы протестировать новую страницу ошибки, запустите сервер разработки и перейдите на несуществующую страницу в своем приложении. Вы можете запустить свой сервер, выполнив эту команду в инструменте командной строки (CLI):
сервер запуска python manage.py
Чтобы приведенная выше команда работала, вы должны находиться в корневом каталоге вашего проекта, т. е. в папке, где находится ваш управлять.py файл живет.
Как только ваш сервер запустится, проверьте свою пользовательскую страницу 404, перейдя на несуществующую страницу, такую как http://127.0.0.1:8000/hello. Если вы все сделали правильно, вы должны увидеть собственную страницу ошибки 404.
Если ваша пользовательская страница с ошибкой 404 не отображается, вам следует проверить свои представления, чтобы убедиться, что вы указали правильный путь к своему HTML-шаблону в оказывать() функции, так как это распространенная проблема.
Пользовательские страницы ошибок улучшают взаимодействие с пользователем
Наличие пользовательской страницы ошибок в вашем приложении улучшит работу ваших пользователей, когда они сталкиваются с ошибками. Вместо общего сообщения об ошибке пользовательская страница ошибки может предоставить более конкретную информацию об ошибке и предложить возможные решения.
Это может помочь пользователям понять, что пошло не так и как это исправить, уменьшая разочарование и повышая их доверие к вашему приложению. Вы также сможете сделать страницу инклюзивной, добавив специальные возможности.