-1

我正在开发一个 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代码,

<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>

你可以帮帮我吗?

4

1 回答 1

0

那不是cycle为了:它是在两个或多个替代方案之间交替。你根本不想要那个。

相反,只需使用forloop属性:

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

尽管我想您不希望第一个始终处于活动状态,但是您没有提供任何有关如何确定“活动”位置的信息。

于 2013-05-14T09:19:04.937 回答