Как получить дочерние элементы MPTTModel уровня n в django?

Строю дерево в django, подключил mptt. Задача следующая: получить всех детей на уровне n своего поддерева (внуков-правнуков). get_children().all(), как я понял, возвращает детей первого уровня. Также нужны деды-прадеды. Я использую self.parent.parent.parent..., но подозреваю, что есть более лаконичный способ добиться результата. Нужены именно инстансы/массивы инстансов класса TreeNode
class TreeNode(MPTTModel):
    parent = TreeForeignKey('self', null=True, blank=True, related_name='child')
    ...
  • Вопрос задан
  • 4035 просмотров
Решения вопроса 1
Masik
@Masik
Программирую понемногу
Выбрать среди детей
node.get_descendants().filter(level=n)
Выбрать среди родителей
node.get_ancestors().filter(level=n)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы