mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-12-03 16:24:01 +03:00
formatted list serializer errors in dict format
This commit is contained in:
parent
2159bfd877
commit
c95a7aa40a
|
|
@ -688,18 +688,19 @@ class ListSerializer(BaseSerializer):
|
|||
}, code='min_length')
|
||||
|
||||
ret = []
|
||||
errors = []
|
||||
errors = {}
|
||||
index = 0
|
||||
|
||||
for item in data:
|
||||
try:
|
||||
validated = self.run_child_validation(item)
|
||||
except ValidationError as exc:
|
||||
errors.append(exc.detail)
|
||||
errors[index] = exc.detail
|
||||
else:
|
||||
ret.append(validated)
|
||||
errors.append({})
|
||||
index += 1
|
||||
|
||||
if any(errors):
|
||||
if errors:
|
||||
raise ValidationError(errors)
|
||||
|
||||
return ret
|
||||
|
|
|
|||
|
|
@ -781,7 +781,7 @@ class TestListSerializerDictErrorBehavior:
|
|||
"""
|
||||
Tests for the proposed dict-based error structure for ListSerializer,
|
||||
and consistency with ListField.
|
||||
|
||||
|
||||
https://github.com/encode/django-rest-framework/issues/7279
|
||||
"""
|
||||
|
||||
|
|
@ -847,7 +847,7 @@ class TestListSerializerDictErrorBehavior:
|
|||
assert isinstance(errors["list_serializer"], dict)
|
||||
assert isinstance(errors["list_field"], dict)
|
||||
|
||||
assert set(errors["list_serializer"].keys()) == {0, 1,}
|
||||
assert set(errors["list_serializer"].keys()) == {1,3}
|
||||
assert set(errors["list_field"].keys()) == {1, 3}
|
||||
|
||||
assert errors["list_serializer"][1] == {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user