Django while循环

fre*_*rik 3 django django-templates while-loop

我想知道是否有任何方法可以在django中做一个while循环(我想这就是我要的)?

我正在尝试做的是一个嵌套的ul / li列表。

该列表由for循环中的for循环生成。但是由于第二个for循环中的某些元素具有更多的子级,因此我想对其进行迭代或以此类推,直到所有子节点都被迭代为止。到目前为止,我发现的唯一方法是拥有另一个for循环。但这似乎不是通用的,而是相当重复的。我需要知道孩子有多少个“级别”。

这是现在的样子:

<ul>
    {% for item in items %}
        <li>
            {{ item.name }}
            {% if item.childs %}
                <ul>
                    {% for child in item.childs %}
                        <li>{{ child.name }}</li>
                    {% endfor %}
                 </ul>
            {% endif %}
        </li>
    {% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)

还是有一种更聪明的方法将数据发送到模板?可以使用某种for / while循环来做到这一点吗?

..弗雷德里克

Ign*_*ams 5

将列表变成包含标签,然后将其本身包含在内。