Commit 34c1da35 by John Whitlock

ModelSerializer.restore_object - errors as list

When a ValueError is raised in ModelSerializer.restore_object, the error
is set to a one-element list, rather than a bare string.
parent c52075f3
...@@ -977,7 +977,7 @@ class ModelSerializer(Serializer): ...@@ -977,7 +977,7 @@ class ModelSerializer(Serializer):
try: try:
setattr(instance, key, val) setattr(instance, key, val)
except ValueError: except ValueError:
self._errors[key] = self.error_messages['required'] self._errors[key] = [self.error_messages['required']]
# Any relations that cannot be set until we've # Any relations that cannot be set until we've
# saved the model get hidden away on these # saved the model get hidden away on these
......
...@@ -685,7 +685,7 @@ class ModelValidationTests(TestCase): ...@@ -685,7 +685,7 @@ class ModelValidationTests(TestCase):
photo_serializer = PhotoSerializer(instance=photo, data={'album': ''}, partial=True) photo_serializer = PhotoSerializer(instance=photo, data={'album': ''}, partial=True)
self.assertFalse(photo_serializer.is_valid()) self.assertFalse(photo_serializer.is_valid())
self.assertTrue('album' in photo_serializer.errors) self.assertTrue('album' in photo_serializer.errors)
self.assertEqual(photo_serializer.errors['album'], photo_serializer.error_messages['required']) self.assertEqual(photo_serializer.errors['album'], [photo_serializer.error_messages['required']])
def test_foreign_key_with_partial(self): def test_foreign_key_with_partial(self):
""" """
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment