aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/serializers.py
diff options
context:
space:
mode:
authorTom Christie2014-10-15 15:13:28 +0100
committerTom Christie2014-10-15 15:13:28 +0100
commitb4f3379c7002f0c80a26605fdd9c69d7cef2f16f (patch)
tree2a4939cc2c46c9fdfab4284ec29aa9be8925d710 /rest_framework/serializers.py
parente8ea365c15b13185efc2ba03e57a3302f783d538 (diff)
downloaddjango-rest-framework-b4f3379c7002f0c80a26605fdd9c69d7cef2f16f.tar.bz2
Support fields that reference a simple callable
Diffstat (limited to 'rest_framework/serializers.py')
-rw-r--r--rest_framework/serializers.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index c844605f..534be6f9 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -115,7 +115,7 @@ class BaseSerializer(Field):
@property
def data(self):
if not hasattr(self, '_data'):
- if self.instance is not None:
+ if self.instance is not None and not getattr(self, '_errors', None):
self._data = self.to_representation(self.instance)
else:
self._data = self.get_initial()
@@ -339,7 +339,7 @@ class Serializer(BaseSerializer):
Dict of native values <- Dict of primitive datatypes.
"""
ret = {}
- errors = {}
+ errors = ReturnDict(serializer=self)
fields = [field for field in self.fields.values() if not field.read_only]
for field in fields: