Django的教程:自定义404和500的看法(django tutorial: custom 40

2019-07-21 23:21发布

Windows 7的
Python的2.7.3
Django的1.5
蟒蛇manage.py runserver命令

我下面教程为可在“ https://docs.djangoproject.com/en/1.5/intro/tutorial03/ ”

我得到尽可能“编写404(找不到页面)视图”事情变得奇怪了。

我试图找出如何使一个自定义的404视图。 但是,我不知道:

A.究竟在何处定制404.html文件应驻留。 它应该是在我的项目目录树或在我的Django的目录树。 我的项目目录树是这个样子,

1> mysite  
2>     - mysite  
3>     - polls  
4>         - templates  
5>             - polls  
6>     - templates  
7>         - admin  

目前404.html是@ 6>

B.什么修改必须作出哪里? 据我所知,handler404和handler500需要在“根” URL的conf进行设置。 我有一个url.py驻留@ 2>和3>(见上文树)。 假设2>是正确的地方我假定语法如下,

handler404 = 'templates.404'
handler500 = 'templates.500'

需要设置,在这里还有什么?

Answer 1:

我可以看到你有一点点错误,但不要担心。

看看,试试这个:

handler404 = 'mysite.views.error404'

然后在mysite的(第二mysite的),如果你没有创建一个views.py。 在views.py地说:

from django.shortcuts import render

def error404(request):
    return render(request,'404.html')

就这样! 在模板中,创建一个文件,做一件好事!

请记住,只有在生产工作(DEBUG=False)否则Django中使用的回溯。 是505相同,你也许可以尝试handler404 = 'polls.views.see404' ,并把在views.py然后,但你知道的,口味不同呵呵呵。

现在,尝试别的东西,例如:评论的urls.py

#handler404 = 'mysite.views.error404'

并删除过的views.py的画质。

在你的模板索引文件创建一个简单的404.html。 运行在生产服务器,并产生404错误,发生了什么?



文章来源: django tutorial: custom 404 and 500 views