我无法在我的应用程序中设置自定义404页面。我知道有很多这样的答案,我已经阅读了一些,但他们没有帮助。具体来说,我尝试将ALLOWED_HOSTS
设置为['*']
,添加TEMPLATE_DEBUG = False
并将--insecure
添加到runserver
。这些都没有帮助。
以下是我遵循的步骤:
创建了页面ankblog/not_found.html
。
将此添加到我的views.py
:
def not_found(request):
return render(request, 'ankblog/not_found.html')
将此添加到我的urls.py
:
from ankblog import views as ank_view
handler404 = 'ank_view.not_found'
在settings.py
:
DEBUG = False
ALLOWED_HOSTS = ['*'] # also tried 'localhost'
我收到500服务器错误而不是预期的页面。另外,如果我将ALLOWED_HOSTS
更改为['localhost']
,我会收到400错误(访问任何页面时,我猜它一般都是错误的。)
我很确定这是我在某个地方遗失的小事,但不确定是什么。请帮忙!
答案 0 :(得分:2)
导入甚至不需要,因为handler404只是一个存储为字符串的变量/设置,因此您可以将其删除。您只需要提供app.file.method
格式的完整包含路径,在您的情况下为ankblog.views.not_found
。