Django: Как проверить, находится ли элемент в поле ManyToMany другого элемента? - PullRequest
8 голосов
/ 07 июня 2009

за заголовком.

1 Ответ

17 голосов
/ 07 июня 2009

Установить атрибут related_name .

Если объект Egg имеет ManyToManyField, указывающий на спам, и вы установите соответствующее имя на egg_set, вы можете получить доступ к яйцам через Spam.egg_set.all() (или использовать filter(), чтобы получить конкретное яйцо, как показано ниже).

Таким образом, чтобы проверить, имеет ли объект Spam my_spam Egg с идентификатором 42, вы можете сделать что-то вроде:

if my_spam.egg_set.filter(pk=42):
    fry_bacon()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...