2014-02-16 3 views
1

Тупо простой вопрос я борюсь с:Джанго ManyToMany косвенный поиск из списка

У меня есть две модели, родитель и ребенок

class Parent(models.Model): 
    children = models.ManyToManyField(Child) 

У меня есть список моделей Родительские из другого запроса и хотите получить все дети тех родителей, в одном запросе, что-то вроде:

children = Child.objects.filter(parent_set__contains=list_of_parents) 

Я знаю, выше не является правильным, но я изо всех сил, чтобы поставить запрос ORM вместе. Даже не уверен, что это выполнимо без ORing некоторых Q() s вместе?

Я только начинаю копать глубже в ORM мимо основного материала.

Заранее благодарен!

ответ

1

Использование in поиска и parent (в нижнем регистре название модели) в фильтре:

children = Child.objects.filter(parent__in=list_of_parents) 
+0

Ах, я вижу, я подумал, что для детей потребовалось бы некоторое формальное определение «родительского» атрибут в модели. Острота. Документы django могли бы использовать больше примеров, которые я задумал :) –

Смежные вопросы