Я не могу увидеть свои пользовательские страницы 404 и 500 в Django

Я пытаюсь сделать пользовательские страницы 404 и 500 в моем проекте Django, но когда я использую эти коды, я не вижу никакого результата!

views.py:

def handle404(request,exception):
    return render(request,'400.html',status=404)

def handle500(request):
    return render(request,'500.html',status=500)


url.py :

handler404 ='base.views.handle404'
handler500 = 'base.views.handle500'


я вижу только эту страницу : введите описание изображения здесь

у кого-нибудь есть предложения по улучшению моего кода?

Создали ли вы 400.html в своих шаблонах? Под этим я подразумеваю, что вы следуете стандартным шаблонам Django: app_name/templates/app_name/400.html?

(Кстати, я бы настоятельно рекомендовал вам сохранять имена, соответствующие ошибкам. Так вы сможете быстро ориентироваться в ваших HTML и вам не придется запоминать, какой HTML обрабатывает ту или иную ошибку)

UPDATE

Вы должны ввести определенный путь к HTML в функцию render.

Смысл: Если ваш HTML для ошибок находится в приложении test_app, ваш путь будет test_app/400.html:

def handle404(request,exception):
    return render(request,'test_app/400.html',status=404)

Не уверен, что вы установили DEBUG=False в вашем settings.py файле.

Но это сработало для меня:

В моей app.views:

# Handler error page 404
def handler404(request, exception):
     return render(request, '404.html', {})


# Handler error page 500
def handler500(request):
     return render(request, '500.html', {})

В return statement я передал пустой контекст, {}.

В файле моего проекта urls.py:

handler404 = 'app.views.handler404'
handler500 = 'app.views.handler500'

setting.py файл:

DEBUG=False
Вернуться на верх