django模板 - 和运算符在if块中不起作用

时间:2016-05-21 10:12:49

标签: django templates if-statement operator-keyword

在views.py中:

all_pages = 5

在html文件中:

{% if all_pages > 2 and page = 1 %}
    <a href='...'>next</a>
{% endif %}

为什么and运算符在这里不起作用?

使用{% if all_pages > 2 %}时会显示链接,但是当我使用and运算符时,不会显示任何内容。

2 个答案:

答案 0 :(得分:3)

and有效。你有一个错字:你需要==而不是单=

{% if all_pages > 2 and page == 1 %}
    <a href='...'>next</a>
{% endif %}

你也可以写:

{% if all_pages > 2 and not paginated_items.has_previous %}
    <a href='...'>next</a>
{% endif %}

paginated_items是您的分页查询集

答案 1 :(得分:0)

嗯......我自己找到了答案。

此:

{% if all_pages > 2 and page = 1 %}
    <a href='...'>next</a>
{% endif %}
应该像这样改变

:|

{% if all_pages > 2 and page == '1' %}
    <a href='...'>next</a>
{% endif %}

唯一的变化是page == '1'运算符后的and

感谢所有建议。