Django 自定义错误页面的给出错误

Django Custom error page's giving error

提问人:Melonendk 提问时间:2/13/2018 更新时间:2/13/2018 访问量:939

问:

我正在尝试使自定义错误页面通用 404 和 500。

如果用户发生默认值,我并不是要提出默认值,但是我尝试搜索并遵循教程等每个地方,我总是最终在 500 和 404 上出现内部错误

我正在运行 django=1.11.6,并且我正在运行 debug False,因为我当然需要看看它是否有效。

我怎样才能解决这个问题并使其工作? 我怎样才能做到这一点,以便它也给用户提供错误文本,以便他们可以将其发送给我?

Views.py(在我的应用文件夹中)

# Error Handlers
def handler404(request):
    return render(request, 'handlers/404.html', status=404)

def handler500(request):
    return render(request, 'handlers/500.html', status=500)

Urls.py(在我的主配置文件夹中)

from django.conf.urls import include, url, handler404, handler500
from django.contrib import admin

handler404 = 'staff.views.handler404'
handler500 = 'staff.views.handler500'

urlpatterns = [
    url(r'^', include('staff.urls')),
    url(r'^admin/', admin.site.urls),
]
python django 视图 django 错误

评论


答:

1赞 Daniel Roseman 2/13/2018 #1

首先,如果您只想使用自己的模板,则不需要自定义处理程序 - 只需将自己的 404.html 和 500.html 文件放在根模板目录中即可。

其次,你可以将 Django 配置为通过电子邮件向你发送错误代码,而不是让用户手动向你发送错误代码。