Python 更改django模板循环中在if-else情况下划分的第一个元素样式
我的djnago模板中有一个循环,它被划分为if-else大小写,我需要更改仅中的第一个元素样式*if*大小写Python 更改django模板循环中在if-else情况下划分的第一个元素样式,python,django,templates,loops,Python,Django,Templates,Loops,我的djnago模板中有一个循环,它被划分为if-else大小写,我需要更改仅中的第一个元素样式*if*大小写 <b><ul> {% for i in prosize %} {% if i.num_in_stock > 0 %} <li ><a class="order" id="{{i.option1}}" href="javascript:setSize('{{i.option1}}')">
<b><ul>
{% for i in prosize %}
{% if i.num_in_stock > 0 %}
<li ><a class="order" id="{{i.option1}}" href="javascript:setSize('{{i.option1}}')">{{i.option1}}</a></li>//**i need to chnage the first element style in this case**
{% else %}
<li><a style="background-color:#c2c2c2;color:#000;" href="#myModal" role="button" data-toggle="modal" >{{i.option1}}</a></li>
{% endif %}
{% endfor %}
</ul></b>
{prosize%中的i为%1}
{如果库存中的i.num\u>0%}
/**在本例中,我需要更改第一个元素样式**
{%else%}
{%endif%}
{%endfor%}
请建议如何执行此操作?用于检查当前迭代是否为第一次迭代。如果您想知道,是的,您可以在
if
中使用像和这样的布尔运算符,Django为“for loop”提供了几种方法。您可以使用以下方法
forloop.first-如果这是第一次通过循环,则为True
forloop.last-如果这是最后一次通过循环,则为True
forloop.counter-循环的当前迭代(1-索引)
forloop.counter0-循环的当前迭代(0索引)
在您的情况下,代码应如下所示:
<b><ul>
{% for i in prosize %}
{% if i.num_in_stock > 0 and forloop.counter == 1 %}
.....................
{prosize%中的i为%1}
{%如果i.num_in_stock>0且forloop.counter==1%}
.....................
.red{背景色:黑色;}{%for i in prosize%}{%if i.num_in_stock>0%}- {%else%}
- {%endif%}{%endfor%}