aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/fields.py
diff options
context:
space:
mode:
Diffstat (limited to 'rest_framework/fields.py')
-rw-r--r--rest_framework/fields.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py
index a022fe09..c406a2f3 100644
--- a/rest_framework/fields.py
+++ b/rest_framework/fields.py
@@ -186,8 +186,10 @@ class WritableField(Field):
else:
native = data[field_name]
except KeyError:
- if self.default is not None:
+ if self.default is not None and not self.root.partial:
native = self.default
+ # partial serializers shouldn't set the default field to avoid
+ # overriding the previously set value
else:
if self.required:
raise ValidationError(self.error_messages['required'])