【问题标题】:How to clean 'forloop.counter' variable (reset variable to 1)如何清理“forloop.counter”变量(将变量重置为 1)
【发布时间】:2018-03-05 10:18:19
【问题描述】:

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

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

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

{% endfor %}

【问题讨论】:

  • 那个数字是数据库ID吗?
  • 显示完整的 html 代码
  • 是数据库1,2,3中的ID,先检查数据库中的ID
  • 无。 ID 不是来自数据库

标签: python django django-templates


【解决方案1】:

首先,您需要使用 orderby https://docs.djangoproject.com/en/dev/ref/models/querysets/#order-by 根据传感器名称对您的 infos 查询集进行排序。然后就可以用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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-27
    • 1970-01-01
    • 1970-01-01
    • 2021-09-28
    • 2018-05-06
    • 2021-06-20
    • 1970-01-01
    相关资源
    最近更新 更多