500/400 예외를 잡아서 처리해야하는이 middelware가 있습니다. 그러나 결코 부름을받지 않습니다. 나는 시작과 MIDDLEWARE_CLASSES
의 끝 부분에 넣어했지만 여전히 예외가 발생할 때 실행되지 않습니다프로세스 예외가있는 미들웨어는 결코 호출되지 않았습니다
수직/middleware.py :
class HandleExceptionsMiddleware(object):
def process_exception(self, request, exception):
print >> sys.stderr, "exception has been raised"
# Get the exception info now, in case another exception is thrown later.
if isinstance(exception, http.Http404):
return self.handle_404(request, exception)
else:
return self.handle_500(request, exception)
settings.py
MIDDLEWARE_CLASSES = (
'vertical.middleware.HandleExceptionsMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'debug_toolbar.middleware.DebugToolbarMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
두 가지 빠른 질문 : __init __() 메소드를 추가하면 해당 메소드가 호출됩니까? 그리고 : (manage.py) 쉘에서 "vertical.middleware import HandleExceptionsMiddleWare"를 할 수 있습니까? –
동일한 문제가 있습니다. 해결책을 얻었습니까? – ksrini
오래 전에 솔루션을 기억했습니다. 당신의 설정은 무엇입니까? –