diff options
| author | Kaustubh <55352418+kc611@users.noreply.github.com> | 2020-08-22 11:23:50 +0530 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-08-26 09:43:39 +0200 |
| commit | b9be11d44265308863e4e8cfb458cd3605091452 (patch) | |
| tree | cf3ad9584a62bcd031c83b333fdd6bba0905b266 /docs/ref | |
| parent | 547a07fa7ec4364ea9ecd2aabfdd16ee4c63003c (diff) | |
Fixed #31918 -- Allowed QuerySet.in_bulk() to fetch on a single distinct field.
Diffstat (limited to 'docs/ref')
| -rw-r--r-- | docs/ref/models/querysets.txt | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt index e5c0038528..228e2cf736 100644 --- a/docs/ref/models/querysets.txt +++ b/docs/ref/models/querysets.txt @@ -2250,8 +2250,9 @@ database query like ``count()`` would. Takes a list of field values (``id_list``) and the ``field_name`` for those values, and returns a dictionary mapping each value to an instance of the object with the given field value. If ``id_list`` isn't provided, all objects -in the queryset are returned. ``field_name`` must be a unique field, and it -defaults to the primary key. +in the queryset are returned. ``field_name`` must be a unique field or a +distinct field (if there's only one field specified in :meth:`distinct`). +``field_name`` defaults to the primary key. Example:: @@ -2265,9 +2266,15 @@ Example:: {1: <Blog: Beatles Blog>, 2: <Blog: Cheddar Talk>, 3: <Blog: Django Weblog>} >>> Blog.objects.in_bulk(['beatles_blog'], field_name='slug') {'beatles_blog': <Blog: Beatles Blog>} + >>> Blog.objects.distinct('name').in_bulk(field_name='name') + {'Beatles Blog': <Blog: Beatles Blog>, 'Cheddar Talk': <Blog: Cheddar Talk>, 'Django Weblog': <Blog: Django Weblog>} If you pass ``in_bulk()`` an empty list, you'll get an empty dictionary. +.. versionchanged:: 3.2 + + Using a distinct field was allowed. + ``iterator()`` ~~~~~~~~~~~~~~ |
