Django之404、500、400错误处理

要自定义处理url请求错误需要进行三步操作:

主要错误有:
404错误:page not found视图
500错误:server error视图
400错误:bad request视图

以404错误为例,500、404同理
我这里创建了一个应用,名为booktest


Step1:修改settings.py

DEBUG = True —-改为—-> DEBUG = False
ALLOWED_HOSTS = [] —-改为—-> ALLOWED_HOSTS = [‘*’, ]
注:未更改将显示调试视图,而不是错误视图

Step2:创建模板文件

在templates目录下的booktest下创建404.html:
这里写图片描述
代码:

<!DOCTYPE html>
<html>
<head>
    <title>404</title>
</head>
<body>
自定义404处理
<hr>
网页找不到
</body>
</html>
Step3:修改views.py文件

添加函数 page_not_found()

def page_not_found(request):
    return render(request, 'booktest/404.html')
Step4:修改项目下的urls.py(框架自带的)

注:不是应用下的urls.py,即这里不是:booktest/urls.py
添加代码:

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^', include('booktest.urls')),
]
handler404 = "booktest.views.page_not_found"

即:handler404 = “应用名称.views.函数名称”
同理:
handler500 = “应用名称.views.函数名称”
handler404 = “应用名称.views.函数名称”

请求一个不存在的url:

这里写图片描述

  • 3
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值