Джанго MPTT получить связанные объекты - PullRequest
1 голос
/ 22 марта 2012

У меня есть дерево категорий, и я хотел бы получить все продукты, которые находятся в дереве категорий.Документация MPTT указывает, что у него есть только методы, которые вы можете вызывать для получения объектов.

Мне интересно, как я могу заставить его работать со связанными объектами, например, этот синтаксис будет идеальным:

Product.objects.get(Q(category__ancestors=my_category)|Q(category=my_category))

Есть ли что-то подобное в django-mptt?

1 Ответ

1 голос
/ 22 марта 2012

Попробуйте вложить набор запросов get_descendants () в набор запросов продукта:

Product.objects.get(category__in=my_category.get_descendants(include_self=True))

То же самое, что и:

Product.objects.get(category__pk__in=my_category.get_descendants(include_self=True).values_list('pk'))
...