diff options
| author | Kevin Brown | 2014-12-03 17:57:47 -0500 | 
|---|---|---|
| committer | Kevin Brown | 2014-12-03 17:57:47 -0500 | 
| commit | 66bce38b5902872435038dd0d387f64cb4156ee4 (patch) | |
| tree | 685e392758b83599368f63b22ac8debfe507ab52 /rest_framework | |
| parent | 5f2f54b7fb52e35e3f47a677c2c5b9981c7d1f81 (diff) | |
| parent | e1d98f77563abf49c4b19dcfb95f263515ae4087 (diff) | |
| download | django-rest-framework-66bce38b5902872435038dd0d387f64cb4156ee4.tar.bz2 | |
Merge pull request #2196 from tomchristie/tomchristie-improve-update-nested-validation
Improve checks for nested creates and updates.
Diffstat (limited to 'rest_framework')
| -rw-r--r-- | rest_framework/serializers.py | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index d417ca80..c7f04b40 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -633,8 +633,8 @@ class ModelSerializer(Serializer):          # If we don't do this explicitly they'd likely get a confusing          # error at the point of calling `Model.objects.create()`.          assert not any( -            isinstance(field, BaseSerializer) and not field.read_only -            for field in self.fields.values() +            isinstance(field, BaseSerializer) and (key in validated_attrs) +            for key, field in self.fields.items()          ), (              'The `.create()` method does not suport nested writable fields '              'by default. Write an explicit `.create()` method for serializer ' @@ -681,8 +681,8 @@ class ModelSerializer(Serializer):      def update(self, instance, validated_attrs):          assert not any( -            isinstance(field, BaseSerializer) and not field.read_only -            for field in self.fields.values() +            isinstance(field, BaseSerializer) and (key in validated_attrs) +            for key, field in self.fields.items()          ), (              'The `.update()` method does not suport nested writable fields '              'by default. Write an explicit `.update()` method for serializer '  | 
