我想创建自己的404页面。 在settings.py中,我添加了:
DEBUG = TEMPLATE_DEBUG = False
ALLOWED_HOSTS = ['*',]
在urls.py中:
handler404 = 'blog.views.handler404'
在views.py中:
def handler404(request):
return render(request, 'blog/404.html')
我也创建了404.html文件。
当我启动服务器时,我写道:
python manage.py runserver --insecure
- 不安全是提供静态文件(否则是无稽之谈)。但如果我去了现有页面,我会得到:
<h1>Not Found</h1><p>The requested URL /post/9/ was not found on this server.</p>
我该如何解决这个问题? 如果这改变了什么,我正在使用Django 1.8 dunno
答案 0 :(得分:1)
你在urls.py中不需要任何东西。转到你的根views.py并在那里添加你的handler404方法,并保留urls.py。
参考:Django, creating a custom 500/404 error page
另外,我没有看到你的TEMPLATE_DIRS变量,即
TEMPLATE_DIRS = (
'/path/to/template/files/',
'/path/to/more/template/files/'
)
需要确保正确找到../blog/ ..中的模板。我个人将其特别添加为子目录。