我创建了一个特定的异常类
class myException(Exception):
...
我对某些特定 View 提出了异常(exception)
django 中已经存在一种方法来处理 urls.py 中的某些异常(如 Http404、Http403...)
handler404 = 'myViews.error.not_found'
我想做的是处理 myException,以便重定向到另一个 View 。
我怎样才能做到这一点?
最佳答案
您应该能够通过编写和注册自定义 Django middleware class 来实现此目的适合您的项目。
在中间件的process_exception
方法,检查您感兴趣的异常并生成适当的 HttpResponse:
def process_exception(self, request, exception):
if isinstance(exception, myException):
return http.HttpResponse("myException raised")
else:
# Perform standard error handling for other exceptions:
return None
关于python - 特定异常的处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12191110/