如何解决自定义模板中的Django 500消息
| 我有一个500.html模板,每当我的应用程序爆炸时就会加载该模板,但我想知道是否可以通过任何方式在模板中输出异常消息? 因此,如果我这样做:raise Exception(\"You broke it!\")
当DEBUG标志设置为True时,这将加载500.html,但是如何访问模板中的异常消息?就像是:
{{ exception.message }}
非常感谢。
G
解决方法
看看这个答案:
如何在Django 500.html页面中包含stacktrace?
将该异常传递给模板/用户不是很好,因为它可能会显示一些您不希望外部使用的内部工作原理,但是如果确实需要,则可以编写自己的500视图,异常并将其传递到您的500模板
views.py
def custom_500(request):
t = loader.get_template(\'500.html\')
type,value,tb = sys.exc_info(),return HttpResponseServerError(t.render(Context({
\'exception_value\': value,})))
urls.py中的某处
handler500 = \'mysite.views.my_custom_error_view\'
模板
{{ exception_value }}
有关此的更多信息,请访问:https://docs.djangoproject.com/en/1.6/topics/http/views/#the-500-server-error-view
, 我知道这是一个旧线程,但我只想澄清一下:
如果您想要一个custon视图,答案是正确的!默认视图将从项目的主模板目录中加载500.html(以及404.html等)。
因此,如果您只需要更改静态页面内容,例如在错误页面中插入一些图像,那么您要做的就是在此位置创建模板文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。