See*_*ull 6 handler http-status-code-404
Windows 7
Python 2.7.3
Django 1.5
python manage.py runserver
我正在关注" https://docs.djangoproject.com/en/1.5/intro/tutorial03/ "上提供的教程.
在事情变得奇怪之前,我得到了"写一个404(页面未找到)视图".
我试图找出如何制作自定义404视图.但是,我不确定:
答:自定义404.html文件应该驻留在哪里.它应该在我的项目目录树中还是在我的Django目录树中.我的项目目录树看起来像这样,
1> mysite
2> - mysite
3> - polls
4> - templates
5> - polls
6> - templates
7> - admin
Run Code Online (Sandbox Code Playgroud)
目前404.html是@ 6>
B.必须在哪些地方进行哪些修改?我知道需要在'root'url conf中设置handler404和handler500.我有一个url.py驻留在@ 2>和3>(参见上面的树).假设2>是正确的位置我假设语法如下,
handler404 = 'templates.404'
handler500 = 'templates.500'
Run Code Online (Sandbox Code Playgroud)
还需要设置什么,在哪里?
小智 7
我可以看到你有一点错误,但别担心.
看,试试这个:
handler404 = 'mysite.views.error404'
Run Code Online (Sandbox Code Playgroud)
然后在mysite(第二个mysite)创建一个views.py,如果你没有.在那个views.py中:
from django.shortcuts import render
def error404(request):
return render(request,'404.html')
Run Code Online (Sandbox Code Playgroud)
就这样!在模板中,创建该文件并做一些不错的事情!
请记住,只有在生产中才能(DEBUG=False)使用,否则django会使用回溯.对于505来说是一样的,你也许可以尝试handler404 = 'polls.views.see404'放入views.py然后你知道,味道是不同的hehehe.
现在,尝试其他方法,例如:在urls.py中注释
#handler404 = 'mysite.views.error404'
并在views.py中删除def.
在模板文件的索引中创建一个简单的404.html.在生产中运行服务器并产生404错误,发生了什么?
| 归档时间: |
|
| 查看次数: |
10807 次 |
| 最近记录: |