Skip to content

Commit

Permalink
Fixed #13263 -- Corrected field name typo in queries documentation ex…
Browse files Browse the repository at this point in the history
…amples. Thanks, RicherPots for bug report and gabrielhurley for the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@12926 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information
jbronn committed Apr 5, 2010
1 parent 7cc4046 commit e07570f
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions docs/topics/db/queries.txt
Expand Up @@ -419,22 +419,22 @@ models doesn't have a value that meets the filter condition, Django will treat
it as if there is an empty (all values are ``NULL``), but valid, object there. it as if there is an empty (all values are ``NULL``), but valid, object there.
All this means is that no error will be raised. For example, in this filter:: All this means is that no error will be raised. For example, in this filter::


Blog.objects.filter(entry__author__name='Lennon') Blog.objects.filter(entry__authors__name='Lennon')


(if there was a related ``Author`` model), if there was no ``author`` (if there was a related ``Author`` model), if there was no ``author``
associated with an entry, it would be treated as if there was also no ``name`` associated with an entry, it would be treated as if there was also no ``name``
attached, rather than raising an error because of the missing ``author``. attached, rather than raising an error because of the missing ``author``.
Usually this is exactly what you want to have happen. The only case where it Usually this is exactly what you want to have happen. The only case where it
might be confusing is if you are using ``isnull``. Thus:: might be confusing is if you are using ``isnull``. Thus::


Blog.objects.filter(entry__author__name__isnull=True) Blog.objects.filter(entry__authors__name__isnull=True)


will return ``Blog`` objects that have an empty ``name`` on the ``author`` and will return ``Blog`` objects that have an empty ``name`` on the ``author`` and
also those which have an empty ``author`` on the ``entry``. If you don't want also those which have an empty ``author`` on the ``entry``. If you don't want
those latter objects, you could write:: those latter objects, you could write::


Blog.objects.filter(entry__author__isnull=False, Blog.objects.filter(entry__authors__isnull=False,
entry__author__name__isnull=True) entry__authors__name__isnull=True)


Spanning multi-valued relationships Spanning multi-valued relationships
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -532,7 +532,7 @@ any joins needed to access the related object. For example, to retrieve all
the entries where the author's name is the same as the blog name, we could the entries where the author's name is the same as the blog name, we could
issue the query: issue the query:


>>> Entry.objects.filter(author__name=F('blog__name')) >>> Entry.objects.filter(authors__name=F('blog__name'))


The pk lookup shortcut The pk lookup shortcut
---------------------- ----------------------
Expand Down

0 comments on commit e07570f

Please sign in to comment.