Как сделать запрос для всех пользователей, которые находятся в чужой таблице? - PullRequest
1 голос
/ 23 июня 2011

У меня есть модель с именем book, и в этой модели есть поле Foreignkey (называемое author) для пользовательской модели.

Мне нужно в одном из моих представлений вернуть список всех авторов (невсе пользователи, только пользователи, которые появляются в модели книги (только авторы).

Я не знаю почему, но мне трудно это получить.

Может кто-нибудьпожалуйста, помогите мне с этим?

10x,

Erez

1 Ответ

2 голосов
/ 23 июня 2011

Попробуйте это:

User.objects.filter(book__isnull=False).distinct()

Я предполагаю, что существует только один внешний ключ от модели Book к модели User.

  • isnull фильтры для всех пользователей, которые связаны с моделью Book.
  • distinct гарантирует, что каждый автор появляется только один раз в результатах.
...