こんにちは、私はずっと探していましたが、これに対する答えが見つかりません。私は python/django の使用経験が 3 か月しかないので、ダミーの質問で失礼します。django mptt を使用して、単純なネストされたセット ナビゲーションを表示しています。
<ul class="root">
{% recursetree nodes %}
<li>
{{ node.name }}
{% if not node.is_leaf_node %}
<ul class="children">
{{ children }}
</ul>
{% endif %}
</li>
{% endrecursetree %}
これは問題なく動作しますが、すべてではなく、選択したカテゴリ (スラッグに基づく) の子のみを表示したいと考えています。何か案は ???
私は最終的にこのようにしました:
{% recursetree nodes %}
<li>
<a href='/{{ node.get_absolute_url}}'>{{ node.name }}</a>
</li>
{% if not node.is_leaf.node %}
{% for c in child %}
{% if c in node.get_children %}
{% if forloop.first %}
<ul class="children">
{{ children }}
</ul>
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endrecursetree %}
ビューで
category = get_object_or_404(Category, slug=slug)
child = category.get_children()
if not child :
child = category.get_siblings()
しかし、それはハックです。誰かがより良い考えを持っていますか?