使用循环到Django?

时间:2013-05-14 01:55:30

标签: django django-templates cycle django-cms

我正在开发一个Django应用程序,我有一些问题,

我希望在Django上做以下效果,

<div id='cssmenu'>
<ul>
<li class='active'><a href='#'><span>Home</span></a></li>
   <li><a href='#'><span>Products</span></a></li>
   <li><a href='#'><span>Company</span></a></li>
   <li class='last'><a href='#'><span>Contact</span></a></li>
</ul>
</div>

Django Code,

<div id='cssmenu'>
{% for child in children %}
{% cycle 'active' 'last' as cssmenu silent %}
<li class="{{ cssmenu }}">
    <a href="{{ child.attr.redirect_url|default:child.get_absolute_url }}">{{ child.get_menu_title }}</a>
    {% if child.children %}
    <ul>
        {% show_menu from_level to_level extra_inactive extra_active template "" "" child %}
    </ul>
    {% endif %}
</li>
{% endfor %}
</div>

你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

这不是cycle的用途:它是两个或更多替代品之间的交替。你根本不需要它。

相反,只需使用forloop属性:

{% for child in children %}
    <li class="{% if forloop.first %}active{% elif forloop.last %}last{% endif %}">...</li>
{% endfor %}

虽然我认为您不希望第一个始终处于活动状态,但您没有提供任何有关如何确定“活动”的信息的信息。