Skip to content

Commit a257b04

Browse files
committed
Fix missing validated_data in raise_errors_on_nested_writes (#2221)
1 parent 71c49fe commit a257b04

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

rest_framework/serializers.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -561,7 +561,7 @@ def errors(self):
561561
# ModelSerializer & HyperlinkedModelSerializer
562562
# --------------------------------------------
563563

564-
def raise_errors_on_nested_writes(method_name, serializer):
564+
def raise_errors_on_nested_writes(method_name, serializer, validated_data):
565565
"""
566566
Give explicit errors when users attempt to pass writable nested data.
567567
@@ -586,7 +586,7 @@ def raise_errors_on_nested_writes(method_name, serializer):
586586
# ...
587587
# profile = ProfileSerializer()
588588
assert not any(
589-
isinstance(field, BaseSerializer) and (key in validated_attrs)
589+
isinstance(field, BaseSerializer) and (key in validated_data)
590590
for key, field in serializer.fields.items()
591591
), (
592592
'The `.{method_name}()` method does not support writable nested'
@@ -605,7 +605,7 @@ def raise_errors_on_nested_writes(method_name, serializer):
605605
# ...
606606
# address = serializer.CharField('profile.address')
607607
assert not any(
608-
'.' in field.source and (key in validated_attrs)
608+
'.' in field.source and (key in validated_data)
609609
for key, field in serializer.fields.items()
610610
), (
611611
'The `.{method_name}()` method does not support writable dotted-source '
@@ -682,7 +682,7 @@ def create(self, validated_data):
682682
If you want to support writable nested relationships you'll need
683683
to write an explicit `.create()` method.
684684
"""
685-
raise_errors_on_nested_writes('create', self)
685+
raise_errors_on_nested_writes('create', self, validated_data)
686686

687687
ModelClass = self.Meta.model
688688

@@ -722,7 +722,7 @@ def create(self, validated_data):
722722
return instance
723723

724724
def update(self, instance, validated_data):
725-
raise_errors_on_nested_writes('update', self)
725+
raise_errors_on_nested_writes('update', self, validated_data)
726726

727727
for attr, value in validated_data.items():
728728
setattr(instance, attr, value)

0 commit comments

Comments
 (0)