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


目录
相关文章
|
前端开发 API 数据格式
Django的restframework接口框架自定义返回数据格式
在前后端分离是大趋势的背景下,前端获取数据都是通过调用后台的接口来获取数据微服务的应用越来越多。Django是Python进行web应用开发常用的web框架,用Django框架进行web应用框架减少了很多工作,通常用很少量的代码就可以实现数据的增、删、改、查的业务应用,同样用Django的restframework的框架对外发布接口也是非常的简单方便,几行代码就可以将数据对象通过接口的方式提供服务。因为在实际开发过程中接口的返回数据有一定的格式,本文介绍通过自定义Response返回对象来自定义接口返回数据格式。
204 1
|
3月前
|
数据库 Python
django中数据库外键可以自定义名称吗
django中数据库外键可以自定义名称吗
|
4月前
|
安全 数据库 数据安全/隐私保护
|
3月前
|
数据处理 Python
Django视图:构建动态Web页面的核心技术
Django视图:构建动态Web页面的核心技术
|
4月前
|
SQL Shell API
python Django教程 之 模型(数据库)、自定义Field、数据表更改、QuerySet API
python Django教程 之 模型(数据库)、自定义Field、数据表更改、QuerySet API
|
4月前
|
中间件 API 网络架构
Django后端架构开发:从匿名用户API节流到REST自定义认证
Django后端架构开发:从匿名用户API节流到REST自定义认证
48 0
|
6月前
|
数据安全/隐私保护 Python
必知的技术知识:django自定义分页器
必知的技术知识:django自定义分页器
|
7月前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
7月前
|
数据处理 数据库 开发者
Django中的自定义管理命令:扩展管理功能的途径
【4月更文挑战第15天】Django教程:介绍如何创建和使用自定义管理命令以扩展框架功能。在应用的`management/commands`目录下创建Python文件,继承`BaseCommand`,实现`handle`方法。示例代码展示了如何定义参数和执行逻辑。自定义命令适用于批量数据处理、定期任务、项目初始化和自定义迁移操作。注意文件位置、命令安全性和稳定性。自定义管理命令能提升开发和维护效率。
|
7月前
|
关系型数据库 MySQL 数据库
Django实践-03模型-01表生成模型+学科页面与教师页面编写
Django实践-03模型-01表生成模型+学科页面与教师页面编写
Django实践-03模型-01表生成模型+学科页面与教师页面编写