@@ -561,7 +561,7 @@ def errors(self):
561
561
# ModelSerializer & HyperlinkedModelSerializer
562
562
# --------------------------------------------
563
563
564
- def raise_errors_on_nested_writes (method_name , serializer ):
564
+ def raise_errors_on_nested_writes (method_name , serializer , validated_data ):
565
565
"""
566
566
Give explicit errors when users attempt to pass writable nested data.
567
567
@@ -586,7 +586,7 @@ def raise_errors_on_nested_writes(method_name, serializer):
586
586
# ...
587
587
# profile = ProfileSerializer()
588
588
assert not any (
589
- isinstance (field , BaseSerializer ) and (key in validated_attrs )
589
+ isinstance (field , BaseSerializer ) and (key in validated_data )
590
590
for key , field in serializer .fields .items ()
591
591
), (
592
592
'The `.{method_name}()` method does not support writable nested'
@@ -605,7 +605,7 @@ def raise_errors_on_nested_writes(method_name, serializer):
605
605
# ...
606
606
# address = serializer.CharField('profile.address')
607
607
assert not any (
608
- '.' in field .source and (key in validated_attrs )
608
+ '.' in field .source and (key in validated_data )
609
609
for key , field in serializer .fields .items ()
610
610
), (
611
611
'The `.{method_name}()` method does not support writable dotted-source '
@@ -682,7 +682,7 @@ def create(self, validated_data):
682
682
If you want to support writable nested relationships you'll need
683
683
to write an explicit `.create()` method.
684
684
"""
685
- raise_errors_on_nested_writes ('create' , self )
685
+ raise_errors_on_nested_writes ('create' , self , validated_data )
686
686
687
687
ModelClass = self .Meta .model
688
688
@@ -722,7 +722,7 @@ def create(self, validated_data):
722
722
return instance
723
723
724
724
def update (self , instance , validated_data ):
725
- raise_errors_on_nested_writes ('update' , self )
725
+ raise_errors_on_nested_writes ('update' , self , validated_data )
726
726
727
727
for attr , value in validated_data .items ():
728
728
setattr (instance , attr , value )
0 commit comments