Skip to content

Commit 6854db0

Browse files
committed
fix: Error response optimization
1 parent 525af67 commit 6854db0

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

apps/common/exception/handle_exception.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import traceback
1111

1212
from rest_framework.exceptions import ValidationError, ErrorDetail, APIException
13+
from rest_framework.utils.serializer_helpers import ReturnDict
1314
from rest_framework.views import exception_handler
1415

1516
from common import result
@@ -71,7 +72,10 @@ def find_err_detail(exc_detail):
7172
if isinstance(_value, ErrorDetail):
7273
return f"{_label}:{find_err_detail(_value)}"
7374
if isinstance(_value, dict) and len(_value.keys()) > 0:
74-
return find_err_detail(_value)
75+
try:
76+
return find_err_detail(ReturnDict(_value, serializer=exc_detail.serializer.fields[key]))
77+
except Exception as e:
78+
return _value
7579
if isinstance(exc_detail, list):
7680
for v in exc_detail:
7781
r = find_err_detail(v)

0 commit comments

Comments
 (0)