Clarify the m2m intermediary docs a bit.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@8167 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
James Bennett 2008-08-01 04:38:55 +00:00
parent c1f5da90a5
commit 74927cd87e
1 changed files with 11 additions and 3 deletions

View File

@ -1000,9 +1000,17 @@ There are a few restrictions on the intermediate model:
* Your intermediate model must contain one - and *only* one - foreign key * Your intermediate model must contain one - and *only* one - foreign key
on the source model (this would be ``Group`` in our example). If you on the source model (this would be ``Group`` in our example). If you
have more than one foreign key, a validation error will be raised. have more than one foreign key, a validation error will be raised.
* If the many-to-many relation is a relation on itself, the relationship * The only exception to this is a model which has a many-to-many
must be non-symmetric. relationship to itself, through an intermediary model. In this
case, two foreign keys to the same model are permitted, but they
will be treated as the two (different) sides of the many-to-many
relation.
* When defining a many-to-many relationship from a model to
itself, using an intermediary model, you *must* use
``symmetrical=False`` (see the documentation for
``ManyToManyField`` above).
Now that you have set up your ``ManyToManyField`` to use your intermediary Now that you have set up your ``ManyToManyField`` to use your intermediary
model (Membership, in this case), you're ready to start creating some model (Membership, in this case), you're ready to start creating some