feat: 完善PermissionDenied异常响应信息

pull/102/head
Angelo 2023-07-07 13:40:18 +08:00
parent acfe3e338d
commit d308d0ea7b
1 changed files with 3 additions and 1 deletions

View File

@ -11,7 +11,7 @@ import traceback
from django.db.models import ProtectedError, RestrictedError
from django.http import Http404
from rest_framework.exceptions import APIException as DRFAPIException, AuthenticationFailed
from rest_framework.exceptions import APIException as DRFAPIException, AuthenticationFailed, PermissionDenied
from rest_framework.status import HTTP_407_PROXY_AUTHENTICATION_REQUIRED, HTTP_401_UNAUTHORIZED
from rest_framework.views import set_rollback, exception_handler
@ -50,6 +50,8 @@ def CustomExceptionHandler(ex, context):
elif isinstance(ex, DRFAPIException):
set_rollback()
msg = ex.detail
if isinstance(ex, PermissionDenied):
msg = f'{msg} ({context["request"].method}: {context["request"].path})'
if isinstance(msg, dict):
for k, v in msg.items():
for i in v: