标签:views python html django 404 96.404 DEBUG 500 页面
前言
django 访问一个不存在的 url 地址时出现404,会报一大堆异常的 html 页面。我们可以自定义一个 404 页面,这样看起来页面友好一点。
遇到问题
settings.py 当 DEBUG 设置为 True 的时候
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']
访问一个不存在地址:http://localhost:8000/yoyo
,404页面
DEBUG = True 是开发者模式,报错的时候方便排错,正式部署一般设置 DEBUG = False
自定义404页面
settings.py 设置 DEBUG = False
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
ALLOWED_HOSTS = ['*']
在 templates 模板下添加 404.html 和 500.html
404.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>404 not found</title>
</head>
<body>
<p>404 not found</p>
</body>
</html>
500.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>500 server error</title>
</head>
<body>
<p>500 server error</p>
</body>
</html>
修改views.py文件,添加2个视图函数
def page_not_found(request, exception):
return render(request, '404.html')
def page_error(request):
return render(request, '500.html')
urls.py配置
配置 handler404 = "应用名称.views.函数名称"
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/
urlpatterns = [
path('admin/', admin.site.urls), # 默认admin路径
]
handler404 = 'apiapp.views.page_not_found'
handler500 = 'apiapp.views.page_error'
# 格式为:'app名.views.函数名'
访问404页面
访问一个不存在地址:http://localhost:8000/yoyo/
,404页面
标签:views,python,html,django,404,96.404,DEBUG,500,页面 来源: https://www.cnblogs.com/yoyoketang/p/14860111.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。