aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorTom Christie2013-03-08 23:00:23 +0000
committerTom Christie2013-03-08 23:00:23 +0000
commit5e993f39294da5e8650c7ac21aeb3da02012b775 (patch)
treed95dfd6c09b6d4b8dfc869f103cb59c65488dcac /docs
parent2596c12a21003d230beb101aa93ddf83a1995305 (diff)
parent6c1fcc855a2d05732113ce260b8660a414e1961e (diff)
downloaddjango-rest-framework-5e993f39294da5e8650c7ac21aeb3da02012b775.tar.bz2
Merge
Diffstat (limited to 'docs')
-rw-r--r--docs/api-guide/filtering.md8
-rw-r--r--docs/api-guide/serializers.md2
-rw-r--r--docs/topics/credits.md2
-rw-r--r--docs/topics/release-notes.md12
4 files changed, 24 insertions, 0 deletions
diff --git a/docs/api-guide/filtering.md b/docs/api-guide/filtering.md
index 53ea7cbc..ed946368 100644
--- a/docs/api-guide/filtering.md
+++ b/docs/api-guide/filtering.md
@@ -140,6 +140,14 @@ For more details on using filter sets see the [django-filter documentation][djan
---
+### Filtering and object lookups
+
+Note that if a filter backend is configured for a view, then as well as being used to filter list views, it will also be used to filter the querysets used for returning a single object.
+
+For instance, given the previous example, and a product with an id of `4675`, the following URL would either return the corresponding object, or return a 404 response, depending on if the filtering conditions were met by the given product instance:
+
+ http://example.com/api/products/4675/?category=clothing&max_price=10.00
+
## Overriding the initial queryset
Note that you can use both an overridden `.get_queryset()` and generic filtering together, and everything will work as expected. For example, if `Product` had a many-to-many relationship with `User`, named `purchase`, you might want to write a view like this:
diff --git a/docs/api-guide/serializers.md b/docs/api-guide/serializers.md
index 6f1f2883..de2cf7d8 100644
--- a/docs/api-guide/serializers.md
+++ b/docs/api-guide/serializers.md
@@ -93,6 +93,8 @@ To serialize a queryset instead of an object instance, you should pass the `many
When deserializing data, you always need to call `is_valid()` before attempting to access the deserialized object. If any validation errors occur, the `.errors` and `.non_field_errors` properties will contain the resulting error messages.
+When deserialising a list of items, errors will be returned as a list of tuples. The first item in an error tuple will be the index of the item with the error in the original data; The second item in the tuple will be a dict with the individual errors for that item.
+
### Field-level validation
You can specify custom field-level validation by adding `.validate_<fieldname>` methods to your `Serializer` subclass. These are analagous to `.clean_<fieldname>` methods on Django forms, but accept slightly different arguments.
diff --git a/docs/topics/credits.md b/docs/topics/credits.md
index 0899632f..bdd3e27e 100644
--- a/docs/topics/credits.md
+++ b/docs/topics/credits.md
@@ -108,6 +108,7 @@ The following people have helped make REST framework great.
* Omer Katz - [thedrow]
* Wiliam Souza - [waa]
* Jonas Braun - [iekadou]
+* Ian Dash - [bitmonkey]
* Pierre Dulac - [dulaccc]
Many thanks to everyone who's contributed to the project.
@@ -251,4 +252,5 @@ You can also contact [@_tomchristie][twitter] directly on twitter.
[thedrow]: https://github.com/thedrow
[waa]: https://github.com/wiliamsouza
[iekadou]: https://github.com/iekadou
+[bitmonkey]: https://github.com/bitmonkey
[dulaccc]: https://github.com/dulaccc
diff --git a/docs/topics/release-notes.md b/docs/topics/release-notes.md
index 42b1d8da..eb4d378e 100644
--- a/docs/topics/release-notes.md
+++ b/docs/topics/release-notes.md
@@ -40,6 +40,18 @@ You can determine your currently installed version using `pip freeze`:
## 2.2.x series
+### Master
+
+* Filtering backends are now applied to the querysets for object lookups as well as lists. (Eg you can use a filtering backend to control which objects should 404)
+* Deal with error data nicely when deserializing lists of objects.
+* Bugfix: Workaround for Django bug causing case where `Authtoken` could be registered for cascade delete from `User` even if not installed.
+
+### 2.2.3
+
+**Date**: 7th March 2013
+
+* Bugfix: Fix None values for for `DateField`, `DateTimeField` and `TimeField`.
+
### 2.2.2
**Date**: 6th March 2013