【发布时间】:2013-10-24 09:42:32
【问题描述】:
我需要创建 N 个菜单项,可能有 N 个子项。
这适用于一个级别。
items = {'link1': 'value1',
'link2': 'value2',
'link3': 'value3'
}
<nav id="menu">
<ul>
{% for key in items %}
<li>
<a href="{{ escape(key) }}"> {{ escape(items[key]) }}</a>
</li
{% end %}
</ul>
</nav>
这将输出:
<nav id="menu">
<ul>
<li>
<a href="link1"> value1</a>
</li>
<li>
<a href="link2"> value2</a>
</li>
<li>
<a href="link3"> value3</a>
</li>
</ul>
</nav>
但是如果我有这样一个更复杂的结构,如何处理呢?
level 1
level 1.1
level 1.2
level 1.3
level 2
level 2.1
level 2.1.1
level 2.1.1.1
level 2.1.2
level 3
level 3.1
level 3.2
【问题讨论】:
-
好问题,简洁的例子,展示了尝试。谢谢。但我认为,您将不得不创建一个自定义过滤器。
-
您使用的是什么模板引擎?我有一个 django templatetag 解决类似任务的例子,但它是你要找的吗?
-
@alko, tornado.template tornadoweb.org/en/stable/template.html