Permalink
Browse files

Fixes #13538 -- Clarified query examples with more explicit import st…

…atements and model vs. instance differentiation. Thanks to yipengh87@gmail.com and kmtracey for the report, and timo for the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@14070 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
Gabriel Hurley
Gabriel Hurley committed Oct 9, 2010
1 parent a904e55 commit cf9249746a79ccaab54196ab9ccd2a83bfc45e0e
Showing with 10 additions and 5 deletions.
  1. +10 −5 docs/topics/db/queries.txt
View
@@ -94,18 +94,23 @@ the database until you explicitly call ``save()``.
Saving ``ForeignKey`` and ``ManyToManyField`` fields
----------------------------------------------------
Updating ``ForeignKey`` fields works exactly the same way as saving a normal
field; simply assign an object of the right type to the field in question::
Updating a ``ForeignKey`` field works exactly the same way as saving a normal
field; simply assign an object of the right type to the field in question.
This example updates the ``blog`` attribute of an ``Entry`` instance ``entry``::
>>> from mysite.blog.models import Entry
>>> entry = Entry.objects.get(pk=1)
>>> cheese_blog = Blog.objects.get(name="Cheddar Talk")
>>> entry.blog = cheese_blog
>>> entry.save()
Updating a ``ManyToManyField`` works a little differently; use the ``add()``
method on the field to add a record to the relation::
method on the field to add a record to the relation. This example adds the
``Author`` instance ``joe`` to the ``entry`` object::
>> joe = Author.objects.create(name="Joe")
>> entry.authors.add(joe)
>>> from mysite.blog.models import Author
>>> joe = Author.objects.create(name="Joe")
>>> entry.authors.add(joe)
Django will complain if you try to assign or add an object of the wrong type.

0 comments on commit cf92497

Please sign in to comment.