Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 更改django模板循环中在if-else情况下划分的第一个元素样式_Python_Django_Templates_Loops - Fatal编程技术网

Python 更改django模板循环中在if-else情况下划分的第一个元素样式

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}}')">

我的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}}')">{{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%}