【发布时间】:2015-06-25 12:19:31
【问题描述】:
当我像这样覆盖我的 urls.py 中的 handler404 和 handler500 时:
from myapp.views import not_found_view
handler404 = not_found_view
handler500 = not_found_view
并在我的中间件中调用raise Http404(),我会看到我的 404 页面。
当我从我的中间件中的urls.py 和raise Http404() 中同时删除handler404 和handler500 时,我看到了我的默认500 错误页面(来自Django Suit) - 因此我试图设置一个用于raise Http404() 的自定义 404 模板。
现在我的问题是:当我删除 handler500 并只设置 handler404 时,我还会看到一个 HTTP 500 页面! :|
为什么当我raise Http404() 时我的handler500 被调用??
我在多个应用程序中有多个模板目录,我尝试在包含设置的主应用程序和另一个“正常”应用程序中放置一个 404.html,但这不起作用..
我也将DEBUG 设置为False。
希望有人能回答我的问题!
【问题讨论】:
标签: python django django-templates http-status-code-404