Django模板比较两个变量不起作用

Hem*_*men 4 django django-templates

我正在使用 Django 和 Bootstrap 构建分页。这个变量 pageNum 是从我的 views.py 传递过来的,它表示当前页面。我使用 for 循环来生成分页。分页本身很好,但是当我将 forloop.counter 与 pageNum 进行比较以将 class="active" 添加到当前 li 时,它不起作用。但是当我实际打印 pageNum 和 forloop.counter 的值时,它们是相同的。这是代码:

 <ul class="pagination">
 {% for pagination in paginationInfo %}
      <li {% if forloop.counter == pageNum %} class="active" {%endif%} ><a href="{{pagination}}">{{forloop.counter}}</a></li>
 {% endfor %}
 </ul>
Run Code Online (Sandbox Code Playgroud)

Rod*_*ela 7

您可能将pageNumas 字符串传递到模板中。要进行比较,您需要将其转换为int视图中的an或使用add过滤器:

<ul class="pagination">
 {% for pagination in paginationInfo %}
    <li {% if forloop.counter == pageNum|add:"0" %} class="active" {%endif%} ><a href="{{pagination}}">{{forloop.counter}}</a></li>
 {% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)