Как отобразить дочерний элемент в Django MPTT?
Я пытаюсь вызвать родительский и дочерний элемент модели, я просмотрел документацию по модели MPTT. Я сделал все, как указано в документации, но мой шаблон не выводит детей
Что может быть возможной причиной этой проблемы?
Вот мои взгляды:
def category_view(request):
category = Categories.objects.all()
brands = Brands.objects.all()
context ={
'category':category,
'brands':brands,
}
return render(request,'./ecommerce/categories.html', context)
и вот мой шаблон HTML:
{% load mptt_tags %}
{% recursetree category%}
<div class="category-wrap mb-4">
<div class="category category-group-image br-sm">
<div class="category-content">
<h4 class="category-name"><a href="">{{ node.name }}</a>
</h4>
<ul class="category-list">
{% if not node.is_leaf_node %}
<li><a href="">{{children}}</a></li>
{% endif %}
</ul>
</div>
</div>
</div>
<!-- End of Category Wrap -->
{% endrecursetree %}
Родительский элемент печатается, но дочерний элемент не печатается
Проделав много ударов и проб, общий подход решил мою проблему. Другим людям, имеющим подобную проблему, мой ответ может быть полезен, поэтому я разместил это решение.
Просмотров:
category = Categories.objects.filter(parent=None)
Шаблон:
{% for category in categories %}
<div class="category-wrap mb-4">
<div class="category category-group-image br-sm">
<div class="category-content">
<h4 class="category-name"><a href="{% url 'ecommerce:item_by_category' category.slug|slugify %}">{{ category.name }}</a>
</h4>
<ul class="category-list">
{% for cat in category.get_children %}
<li><a href="/categories/{{ cat.id }}/">{{ cat.name }}</a> </li>
{% endfor %}
</ul>
</div>
</div>
</div>
<!-- End of Category Wrap -->
{% endfor %}