Django==2.0.1
python==3.5.2
import sys
from django.views.debug import technical_500_response
class ExceptionMiddleware(object): # 此處繼承object
def process_exception(self, request, exception):
if request.user.is_superuser:
return technical_500_response(request, *sys.exc_info())
開啓uwsgi是出現上述錯誤,查閱發現在django==1.11.0中不能獲取request.user的返回值,因爲不返回,所以繼承MiddlewareMixin可以解決此問題.
修改代碼如下:
import sys
from django.utils.deprecation import MiddlewareMixin
from django.views.debug import technical_500_response
class ExceptionMiddleware(MiddlewareMixin): # 此處繼承MiddlewareMixin
def process_exception(self, request, exception):
if request.user.is_superuser:
return technical_500_response(request, *sys.exc_info())