mirror of
https://github.com/django/django.git
synced 2025-04-22 00:04:43 +00:00
[1.6.x] Fixed #23774 -- Clarified QuerySet.order_by() and related models.
Backport of 11b7680d0e from master
This commit is contained in:
parent
bcdfa0eb9a
commit
b078ccf8bf
@ -284,9 +284,10 @@ and so on for as many models as you want to join. For example::
|
||||
Entry.objects.order_by('blog__name', 'headline')
|
||||
|
||||
If you try to order by a field that is a relation to another model, Django will
|
||||
use the default ordering on the related model (or order by the related model's
|
||||
use the default ordering on the related model, or order by the related model's
|
||||
primary key if there is no :attr:`Meta.ordering
|
||||
<django.db.models.Options.ordering>` specified. For example::
|
||||
<django.db.models.Options.ordering>` specified. For example, since the ``Blog``
|
||||
model has no default ordering specified::
|
||||
|
||||
Entry.objects.order_by('blog')
|
||||
|
||||
@ -294,7 +295,10 @@ primary key if there is no :attr:`Meta.ordering
|
||||
|
||||
Entry.objects.order_by('blog__id')
|
||||
|
||||
...since the ``Blog`` model has no default ordering specified.
|
||||
If ``Blog`` had ``ordering = ['name']``, then the first queryset would be
|
||||
identical to::
|
||||
|
||||
Entry.objects.order_by('blog__name')
|
||||
|
||||
Be cautious when ordering by fields in related models if you are also using
|
||||
:meth:`distinct()`. See the note in :meth:`distinct` for an explanation of how
|
||||
|
Loading…
x
Reference in New Issue
Block a user