[1.11.x] Fixed #28352 -- Corrected QuerySet.values_list() return type in docs examples.

Backport of babe9e64a6 and
2457c1866e from master
This commit is contained in:
Irindu Indeera 2017-07-11 23:45:17 +05:30 committed by Tim Graham
parent b2ebc47a22
commit fe7b456825
3 changed files with 12 additions and 12 deletions

View File

@ -110,7 +110,7 @@ A simple example::
... output_field=CharField(), ... output_field=CharField(),
... ), ... ),
... ).values_list('name', 'discount') ... ).values_list('name', 'discount')
[('Jane Doe', '0%'), ('James Smith', '5%'), ('Jack Black', '10%')] <QuerySet [('Jane Doe', '0%'), ('James Smith', '5%'), ('Jack Black', '10%')]>
``Case()`` accepts any number of ``When()`` objects as individual arguments. ``Case()`` accepts any number of ``When()`` objects as individual arguments.
Other options are provided using keyword arguments. If none of the conditions Other options are provided using keyword arguments. If none of the conditions
@ -132,7 +132,7 @@ the ``Client`` has been with us, we could do so using lookups::
... output_field=CharField(), ... output_field=CharField(),
... ) ... )
... ).values_list('name', 'discount') ... ).values_list('name', 'discount')
[('Jane Doe', '5%'), ('James Smith', '0%'), ('Jack Black', '10%')] <QuerySet [('Jane Doe', '5%'), ('James Smith', '0%'), ('Jack Black', '10%')]>
.. note:: .. note::
@ -153,7 +153,7 @@ registered more than a year ago::
... When(account_type=Client.PLATINUM, then=a_year_ago), ... When(account_type=Client.PLATINUM, then=a_year_ago),
... ), ... ),
... ).values_list('name', 'account_type') ... ).values_list('name', 'account_type')
[('Jack Black', 'P')] <QuerySet [('Jack Black', 'P')]>
Advanced queries Advanced queries
================ ================
@ -182,7 +182,7 @@ their registration dates. We can do this using a conditional expression and the
... ), ... ),
... ) ... )
>>> Client.objects.values_list('name', 'account_type') >>> Client.objects.values_list('name', 'account_type')
[('Jane Doe', 'G'), ('James Smith', 'R'), ('Jack Black', 'P')] <QuerySet [('Jane Doe', 'G'), ('James Smith', 'R'), ('Jack Black', 'P')]>
Conditional aggregation Conditional aggregation
----------------------- -----------------------

View File

@ -635,20 +635,20 @@ respective field or expression passed into the ``values_list()`` call — so the
first item is the first field, etc. For example:: first item is the first field, etc. For example::
>>> Entry.objects.values_list('id', 'headline') >>> Entry.objects.values_list('id', 'headline')
[(1, 'First entry'), ...] <QuerySet [(1, 'First entry'), ...]>
>>> from django.db.models.functions import Lower >>> from django.db.models.functions import Lower
>>> Entry.objects.values_list('id', Lower('headline')) >>> Entry.objects.values_list('id', Lower('headline'))
[(1, 'first entry'), ...] <QuerySet [(1, 'first entry'), ...]>
If you only pass in a single field, you can also pass in the ``flat`` If you only pass in a single field, you can also pass in the ``flat``
parameter. If ``True``, this will mean the returned results are single values, parameter. If ``True``, this will mean the returned results are single values,
rather than one-tuples. An example should make the difference clearer:: rather than one-tuples. An example should make the difference clearer::
>>> Entry.objects.values_list('id').order_by('id') >>> Entry.objects.values_list('id').order_by('id')
[(1,), (2,), (3,), ...] <QuerySet[(1,), (2,), (3,), ...]>
>>> Entry.objects.values_list('id', flat=True).order_by('id') >>> Entry.objects.values_list('id', flat=True).order_by('id')
[1, 2, 3, ...] <QuerySet [1, 2, 3, ...]>
It is an error to pass in ``flat`` when there is more than one field. It is an error to pass in ``flat`` when there is more than one field.
@ -671,10 +671,10 @@ For example, notice the behavior when querying across a
:class:`~django.db.models.ManyToManyField`:: :class:`~django.db.models.ManyToManyField`::
>>> Author.objects.values_list('name', 'entry__headline') >>> Author.objects.values_list('name', 'entry__headline')
[('Noam Chomsky', 'Impressions of Gaza'), <QuerySet [('Noam Chomsky', 'Impressions of Gaza'),
('George Orwell', 'Why Socialists Do Not Believe in Fun'), ('George Orwell', 'Why Socialists Do Not Believe in Fun'),
('George Orwell', 'In Defence of English Cooking'), ('George Orwell', 'In Defence of English Cooking'),
('Don Quixote', None)] ('Don Quixote', None)]>
Authors with multiple entries appear multiple times and authors without any Authors with multiple entries appear multiple times and authors without any
entries have ``None`` for the entry headline. entries have ``None`` for the entry headline.
@ -683,7 +683,7 @@ Similarly, when querying a reverse foreign key, ``None`` appears for entries
not having any author:: not having any author::
>>> Entry.objects.values_list('authors') >>> Entry.objects.values_list('authors')
[('Noam Chomsky',), ('George Orwell',), (None,)] <QuerySet [('Noam Chomsky',), ('George Orwell',), (None,)]>
.. versionchanged:: 1.11 .. versionchanged:: 1.11

View File

@ -229,7 +229,7 @@ ones:
>>> fruit.name = 'Pear' >>> fruit.name = 'Pear'
>>> fruit.save() >>> fruit.save()
>>> Fruit.objects.values_list('name', flat=True) >>> Fruit.objects.values_list('name', flat=True)
['Apple', 'Pear'] <QuerySet ['Apple', 'Pear']>
:attr:`~Field.unique` :attr:`~Field.unique`
If ``True``, this field must be unique throughout the table. If ``True``, this field must be unique throughout the table.