如何清理'forloop.counter'变量(将变量重置为1)

问题描述 投票:-1回答:1

在我的数据库中有客户,每个客户都有传感器。例如,客户1具有2个传感器。是gettin传感器信息并将它们分别放在表格中。但是物品的ID(NO)是错误的。请看看pic1 pic1

作为编码,我使用标准的django模板过滤器。

{% for info in infos %}
   ......
   ......
  <span> {{ forloop.counter }} </span>

{% endfor %}
python django django-templates
1个回答
1
投票

首先,您需要使用orderby infos根据传感器名称对https://docs.djangoproject.com/en/dev/ref/models/querysets/#order-by查询集进行排序。然后你可以使用Javascript与django模板标签来实现

<script type="text/javascript">
    var sensor_name = "";
    var counter = 1;

    {% for info in infos %}
    if (sensor_name != {{info.name}}) {
        sensor_name = {{info.name}};
        counter = 1;
    }
    else {
        counter += 1;
    }
    $("span").text(counter); //this is your span where you show the sensor number

    {% endfor %}
</script>
© www.soinside.com 2019 - 2024. All rights reserved.