Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- In [16]: newuser = User(username='test')
- In [17]: newuser.save()
- In [18]: newuser.pk
- Out[18]: 2
- In [19]: s = SpecialUserSerializer(data={'special_user': 2})
- In [20]: s.is_valid()
- Out[20]: True
- In [21]: s.save()
- ---------------------------------------------------------------------------
- ValueError Traceback (most recent call last)
- <ipython-input-21-8f3ac9140d38> in <module>()
- ----> 1 s.save()
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/rest_framework/serializers.pyc in save(self, **kwargs)
- 213 )
- 214 else:
- --> 215 self.instance = self.create(validated_data)
- 216 assert self.instance is not None, (
- 217 '`create()` did not return an object instance.'
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/rest_framework/serializers.pyc in create(self, validated_data)
- 914
- 915 try:
- --> 916 instance = ModelClass.objects.create(**validated_data)
- 917 except TypeError:
- 918 tb = traceback.format_exc()
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/django/db/models/manager.pyc in manager_method(self, *args, **kwargs)
- 83 def create_method(name, method):
- 84 def manager_method(self, *args, **kwargs):
- ---> 85 return getattr(self.get_queryset(), name)(*args, **kwargs)
- 86 manager_method.__name__ = method.__name__
- 87 manager_method.__doc__ = method.__doc__
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/django/db/models/query.pyc in create(self, **kwargs)
- 390 and returning the created object.
- 391 """
- --> 392 obj = self.model(**kwargs)
- 393 self._for_write = True
- 394 obj.save(force_insert=True, using=self.db)
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/django/db/models/base.pyc in __init__(self, *args, **kwargs)
- 551 # checked) by the RelatedObjectDescriptor.
- 552 if rel_obj is not _DEFERRED:
- --> 553 _setattr(self, field.name, rel_obj)
- 554 else:
- 555 if val is not _DEFERRED:
- /home/mmikofski_l/Documents/Projects/drf_onetoone_test/venv/local/lib/python2.7/site-packages/django/db/models/fields/related_descriptors.pyc in __set__(self, instance, value)
- 214 instance._meta.object_name,
- 215 self.field.name,
- --> 216 self.field.remote_field.model._meta.object_name,
- 217 )
- 218 )
- ValueError: Cannot assign "2": "SpecialUser.special_user" must be a "User" instance.
- In [22]: s = SpecialUserSerializer(data={'special_user': {'username': 'newuser'}})
- In [23]: s.is_valid()
- Out[23]: False
- In [24]: s.errors
- Out[24]:
- ReturnDict([('special_user',
- [u"'{'username': 'newuser'}' value must be an integer."])])
- In [25]:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement