use*_*455 8 python django exception-handling
这可能是一个Python新手问题......
try:
#do something
except:
raise Exception('XYZ has gone wrong...')
Run Code Online (Sandbox Code Playgroud)
即使DEBUG = True,我也不希望这raise Exception给我那个黄页.我实际上想通过将用户重定向到错误页面来处理异常或显示错误(在页面顶部给出一条CSS错误消息......)
我该如何处理?有人可以指导我吗?如果我只是提高它,我将获得黄色调试页面(再次,我不希望某些例外通过在DEBUG = True时显示调试页面来阻止网站运行).
如何在views.py中处理这些异常?
谢谢.
Jos*_*ton 20
你有三个选择.
process_exception实现的自定义中间件中间件示例:
class MyExceptionMiddleware(object):
def process_exception(self, request, exception):
if not isinstance(exception, SomeExceptionType):
return None
return HttpResponse('some message')
Run Code Online (Sandbox Code Playgroud)