her*_*i0n 7 django http-status-code-404 django-staticfiles
我想在我制作的自定义404/500页面上使用一些自定义CSS和图像.但是Django在这些页面中不包含STATIC_URL变量.实现这一目标的最佳方法是什么?我也试过制作一个自定义的404/500视图并渲染一个任意的HTML文件,但它没有那么好用.
Mat*_*att 17
我是这样做的:
# urls or settings
handler500 = 'mysite.views.server_error'
# views
from django.shortcuts import render
def server_error(request):
# one of the things ‘render’ does is add ‘STATIC_URL’ to
# the context, making it available from within the template.
response = render(request, '500.html')
response.status_code = 500
return response
Run Code Online (Sandbox Code Playgroud)
值得一提的是Django默认不这样做的原因:
"默认的500视图不会将变量传递给500.html模板,并使用空的Context进行渲染,以减少出现其他错误的可能性."
| 归档时间: |
|
| 查看次数: |
3425 次 |
| 最近记录: |