Django自定义错误页面

简介: 1.修改系统配置需要修改settings.py文件中的两个配置:将DEBUG设置为False,标识当前处于非调试模式非调试模式下需要指定ALLOWED_HOSTS,这里将它简单地设置为[‘*’],代表允许所有的域名访问


1.修改系统配置


需要修改settings.py文件中的两个配置:


将DEBUG设置为False,标识当前处于非调试模式

非调试模式下需要指定ALLOWED_HOSTS,这里将它简单地设置为[‘*’],代表允许所有的域名访问


2.定义错误页面模板文件


创建4个文件,分别命名为:404.html、400.html、403.html和500.html。可以知道,这些模板文件分别对应handler的4类错误码


这4个handler:



3.定义错误处理视图


# 404
def page_not_found(request, exception, template_name='error/404.html'):
    return render(request, template_name)
# 500
# 与前三个视图定义不同,500错误:server_error只有两个参数
def server_error(request, template_name='error/500.html'):
    return render(request, template_name)


4.配置handler


最后,还需要指定错误处理handler的入口。这需要在项目的urls.py文件中指定,而不是在应用的urls.py文件中指定:


from post.views import page_not_found, server_error
handler404 = page_not_found
handler500 = server_error


目录
相关文章
|
7月前
|
前端开发 API 数据格式
Django的restframework接口框架自定义返回数据格式
在前后端分离是大趋势的背景下,前端获取数据都是通过调用后台的接口来获取数据微服务的应用越来越多。Django是Python进行web应用开发常用的web框架,用Django框架进行web应用框架减少了很多工作,通常用很少量的代码就可以实现数据的增、删、改、查的业务应用,同样用Django的restframework的框架对外发布接口也是非常的简单方便,几行代码就可以将数据对象通过接口的方式提供服务。因为在实际开发过程中接口的返回数据有一定的格式,本文介绍通过自定义Response返回对象来自定义接口返回数据格式。
75 1
|
1天前
|
数据处理 数据库 开发者
Django中的自定义管理命令:扩展管理功能的途径
【4月更文挑战第15天】Django教程:介绍如何创建和使用自定义管理命令以扩展框架功能。在应用的`management/commands`目录下创建Python文件,继承`BaseCommand`,实现`handle`方法。示例代码展示了如何定义参数和执行逻辑。自定义命令适用于批量数据处理、定期任务、项目初始化和自定义迁移操作。注意文件位置、命令安全性和稳定性。自定义管理命令能提升开发和维护效率。
|
9月前
|
网络架构 Python
【Django学习】(十四)自定义action_router
【Django学习】(十四)自定义action_router
|
9月前
|
Python
【Django学习】(九)自定义校验器_单字段_多字段校验_模型序列化器类
【Django学习】(九)自定义校验器_单字段_多字段校验_模型序列化器类
|
11月前
|
数据库 Python
django drf 实现只有超级用户才能注册账号(涉及自定义权限permissions,获取token信息解析token信息)
django drf 实现只有超级用户才能注册账号(涉及自定义权限permissions,获取token信息解析token信息)
|
11月前
|
Python
Django框架开发004期 Python编程调用自定义Django框架template模板网页
Django框架开发004期 Python编程调用自定义Django框架template模板网页
|
12月前
|
前端开发 关系型数据库 MySQL
Django 自定义装饰器解决MySQL server has gone away错误
Django 自定义装饰器解决MySQL server has gone away错误
80 0
|
12月前
|
测试技术 Python
Django Template层之自定义tag
Django Template层之自定义tag
48 0
|
12月前
|
测试技术 API Python
Django 通过自定义context_processors实现自定义tag
Django 通过自定义context_processors实现自定义tag
44 0
|
数据库 数据安全/隐私保护 Python
【Django学习笔记 - 19】:认证、自定义认证、权限、限流
【Django学习笔记 - 19】:认证、自定义认证、权限、限流
225 0
【Django学习笔记 - 19】:认证、自定义认证、权限、限流