Тебе нужно написать свой кастомный фильр. Вот документация как создать свой фильтр.
https://docs.djangoproject.com/en/1.11/ref/contrib...
В фильтре тебе нужно написть свой queryset (sql запрос).
Чтобы понять какой запрос писать тебе нужно прочитать про
nested sets.
Выбор потомков:
SELECT id, name, level FROM my_tree WHERE left_key >= $left_key AND right_key <= $right_key ORDER BY left_key
Можно также посмотреть исходники метода get_descendants из mptt
https://github.com/django-mptt/django-mptt/blob/ma...
Должно получиться как-то так:
section = get_objects_or_404(Section, id= request.GET.get ...
Section.objects.filter(
tree_id=section.tree_id
left__gte=section.left,
left__lte=section.right
).order_by('left')