要自定义处理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.函数名称”

Step3:修改views.py文件添加函数 page_not_found()
def page_not_found(request):    return render(request, 'booktest/404.html')12Step4:修改项目下的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"12345即:handler404 = “应用名称.views.函数名称” 同理: handler500 = “应用名称.views.函数名称” handler404 = “应用名称.views.函数名称”
请求一个不存在的url:--------------------- 作者:GYT0313 来源:CSDN 原文:https://blog.csdn.net/qq_38038143/article/details/80105653 版权声明:本文为博主原创文章,转载请附上博文链接!

Django之404、500、400错误处理的更多相关文章

  1. 微信通过openID发送消息/后台post、get提交并接收数据 C# .NET 配置404,500等错误信息 连接字符串

    微信通过openID发送消息/后台post.get提交并接收数据   控制器:下面是post发送消息(微信不支持从前台发送数据,之前试过,报错,需要跨域,跨域的问题解决后还不行,最后发现之后后端提交 ...

  2. C# .NET 配置404,500等错误信息

    <customErrors mode="On" defaultRedirect="viewAll.html"><!--所有的错误显示页--&g ...

  3. 解决spring boot中rest接口404,500等错误返回统一的json格式

    在开发rest接口时,我们往往会定义统一的返回格式,列如: { "status": true, "code": 200, "message" ...

  4. 转载Django 500,404,400错误修改优化

    转载:https://blog.csdn.net/qq_38038143/article/details/80105653 404错误:page not found视图 500错误:server er ...

  5. apache 网页301重定向、自定义400/403/404/500错误页面

    首先简单介绍一下,.htaccess文件是Apache服务器中的一个配置文件(Nginx服务器没有),它负责相关目录下的网页配置.通过对.htaccess文件进行设置,可以帮我们实现:网页301重定向 ...

  6. java异常处理及400,404,500错误处理

        java代码中经常碰到各种需要处理异常的时候,比如什么IOException  SQLException  NullPointException等等,在开发web项目中,遇到异常,我现在做的就 ...

  7. django 配置404,500页面

    JSP CURL session COOKIE diango 自定义404 500页面     1.首先将settings设置debug=false;             2.设置static路径 ...

  8. Django 编写自定义的 404 / 500 报错界面

    Django 编写自定义的 404 / 500 报错界面 1. 首先 setting.py 文件中的 debug 参数设置成 false ,不启用调试. DEBUG = False 2. 在 temp ...

  9. web项目错误页面友好处理404,500等

    写在前面: 在web项目中,可能会出现404.500等错误页面,给用户体验不怎么好,所以我们可以对这些错误页面进行友好的处理. 步骤: 1.配置web.xml: <!-- 错误页面友好显示 -- ...

随机推荐

  1. golang 获取get参数

    package main import ( "log" "net/http" ) func main() { http.HandleFunc("/&q ...

  2. 产品设计教程:利用“系列位置效应”优化UI

    任何博得人们喜欢的产品都在一定程度上契合了用户的心理需求.设计和心理学息息相关,掌握一些基本心理学知识,设计师的作品更能在潜意识中抓住用户的心. 系列位置效应 “系列位置效应”(The Serial ...

  3. js 图片区域可点击,适配移动端,图片大小随意改变

    实现图片区域可点击,实际上使用map是可以的,但是适配效果并不好,图片只能是固定大小的值,而且点都被写死了. 在这里,我使用的js基于canvas写的一个小工具.可以圈出你需要点击的部分,然后生成一串 ...

  4. bootstrap modal与select2使用冲突解决

    今天发现项目使用bootstrap modal 与 jquery select2 结合时发现select2不起作用,点击select框不显示选项,查阅资料后发现是因为modal层遮挡了select2的 ...

  5. js中var a=new Object()和var a={}有什么区别吗?

    应该是没有区别的,两者都是生成一个默认的Object对象.js和其它语言一样,一切对象的基类都是Object,所以,new Object()和简易的{}是同样的空对象,就是默认的对象.本来我以为{}应 ...

  6. VS基本学习之(变量与常量)

    一.变量与常量 1) 变量        由(定义+赋值+取值组成) 变量的命名规则: ① 变量名组成:字母  数字  下划线  @  汉字 ② 首字母只能用:字母  下划线  @  汉字(不能是数字 ...

  7. LeetCode108.将有序数组转换为二叉搜索树

    将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1. 示例: 给定有序数组: [-10,-3,0, ...

  8. B树,B+树,B*树以及R树的介绍

    https://blog.csdn.net/peterchan88/article/details/52248714 作者:July.weedge.Frankie.编程艺术室出品. 说明:本文从B树开 ...

  9. 启动与关闭WebService

    [1]代码 /* * @brief: 启动WebServcie服务器 * @return:void */ void UPCSoftphoneClient::startWebService() { m_ ...

  10. 51ll网产品信息保存为txt文件

    import requests from pyquery import PyQuery as pq url='http://www.51xxx.com/Try/index/p/3' headers={ ...