diff options
| author | Tom Christie | 2013-03-26 08:59:40 +0000 |
|---|---|---|
| committer | Tom Christie | 2013-03-26 08:59:40 +0000 |
| commit | 9b56616750bc769a3a5172f8f7603153c9335685 (patch) | |
| tree | defab9a9e57a626b83619aa3388f8ebf51ca33cc /docs/api-guide/serializers.md | |
| parent | f82db5521eb2c717ff16d0e29de24ad57f150ea2 (diff) | |
| parent | 92c929094c88125ea4a2fd359ec99d2b4114f081 (diff) | |
| download | django-rest-framework-9b56616750bc769a3a5172f8f7603153c9335685.tar.bz2 | |
Merge
Diffstat (limited to 'docs/api-guide/serializers.md')
| -rw-r--r-- | docs/api-guide/serializers.md | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/docs/api-guide/serializers.md b/docs/api-guide/serializers.md index 42e81cad..1a3c3431 100644 --- a/docs/api-guide/serializers.md +++ b/docs/api-guide/serializers.md @@ -242,21 +242,21 @@ This allows you to write views that update or create multiple items when a `PUT` # True serialize.save() # `.save()` will be called on each updated or newly created instance. -Bulk updates will update any instances that already exist, and create new instances for data items that do not have a corresponding instance. +By default bulk updates will be limited to updating instances that already exist in the provided queryset. -When performing a bulk update you may want any items that are not present in the incoming data to be deleted. To do so, pass `allow_delete=True` to the serializer. +When performing a bulk update you may want to allow new items to be created, and missing items to be deleted. To do so, pass `allow_add_remove=True` to the serializer. - serializer = BookSerializer(queryset, data=data, many=True, allow_delete=True) + serializer = BookSerializer(queryset, data=data, many=True, allow_add_remove=True) serializer.is_valid() # True - serializer.save() # `.save()` will be called on each updated or newly created instance. + serializer.save() # `.save()` will be called on updated or newly created instances. # `.delete()` will be called on any other items in the `queryset`. -Passing `allow_delete=True` ensures that any update operations will completely overwrite the existing queryset, rather than simply updating any objects found in the incoming data. +Passing `allow_add_remove=True` ensures that any update operations will completely overwrite the existing queryset, rather than simply updating existing objects. #### How identity is determined when performing bulk updates -Performing a bulk update is slightly more complicated than performing a bulk creation, because the serializer needs a way of determining how the items in the incoming data should be matched against the existing object instances. +Performing a bulk update is slightly more complicated than performing a bulk creation, because the serializer needs a way to determine how the items in the incoming data should be matched against the existing object instances. By default the serializer class will use the `id` key on the incoming data to determine the canonical identity of an object. If you need to change this behavior you should override the `get_identity` method on the `Serializer` class. For example: |
