diff options
| author | Tom Christie | 2012-10-10 16:41:08 +0100 |
|---|---|---|
| committer | Tom Christie | 2012-10-10 16:41:08 +0100 |
| commit | 83f39b3dce4028ff6b2ebe0be55c2a00d67ede00 (patch) | |
| tree | d74ca15fd92b6604ed563dd5e49c27184aa7a4ac /rest_framework/serializers.py | |
| parent | 221ecd21828c11a800c00a6ec52e93587b7e2a3b (diff) | |
| download | django-rest-framework-83f39b3dce4028ff6b2ebe0be55c2a00d67ede00.tar.bz2 | |
Don't fail when no data provided
Diffstat (limited to 'rest_framework/serializers.py')
| -rw-r--r-- | rest_framework/serializers.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 5c91fee3..06330017 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -237,8 +237,13 @@ class BaseSerializer(Field): if hasattr(data, '__iter__') and not isinstance(data, dict): # TODO: error data when deserializing lists return (self.from_native(item) for item in data) + self._errors = {} - attrs = self.restore_fields(data) + if data is not None: + attrs = self.restore_fields(data) + else: + self._errors['non_field_errors'] = 'No input provided' + if not self._errors: return self.restore_object(attrs, instance=getattr(self, 'object', None)) |
