Джанго совокупность отношений второй степени со многими ко многим - PullRequest
0 голосов
/ 03 июля 2011

Извиняюсь за сложный заголовок, но у меня по сути есть модель Foo, которая имеет несколько Bar объектов (т.е. Foo.bar_set.all() дает мне все Bar объекты).Кроме того, каждый Bar объект имеет несколько Baz объектов одинаковым образом.

Есть ли способ получить доступ ко всем Baz объектам, которые принадлежат Bar объектам Foo?Что-то вроде Foo.bar_set.all().baz_set.all() было бы удобно ...

На данный момент я просто загружаю Foo.bar_set.all(), перебираю bar и собираю набор foo.Есть ли лучший способ сделать это?

1 Ответ

2 голосов
/ 03 июля 2011

Может как то так?Здесь я предполагаю, что Baz имеет поле bar, от ForeignKey до Bar:

Baz.objects.filter(bar__in=foo.bar_set.all())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...