From 1adfc41dc7c7e50edbf72f87ebf62bae33eb212c Mon Sep 17 00:00:00 2001 From: Mark Aaron Shirley Date: Wed, 21 Nov 2012 09:36:37 -0800 Subject: [PATCH] partial argument should override required --- rest_framework/fields.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rest_framework/fields.py b/rest_framework/fields.py index d35e918cd..b61dcb42a 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -53,6 +53,8 @@ class Field(object): self.parent = parent self.root = parent.root or parent self.context = self.root.context + if self.root.partial: + self.required = False def field_from_native(self, data, files, field_name, into): """ @@ -148,7 +150,7 @@ class WritableField(Field): self.widget = widget def validate(self, value): - if value in validators.EMPTY_VALUES and self.required and not self.root.partial: + if value in validators.EMPTY_VALUES and self.required: raise ValidationError(self.error_messages['required']) def run_validators(self, value): @@ -186,7 +188,7 @@ class WritableField(Field): if self.default is not None: native = self.default else: - if self.required and not self.root.partial: + if self.required: raise ValidationError(self.error_messages['required']) return