首页 > 解决方案 > 在 {% if statement %} 中使用大于 (>) 或小于 (<) 不起作用

问题描述

我正在我的网站上的 home.html 文件上为分页器编写代码。当我尝试放置一个“>”和一个“<”时,原子文本编辑器将其读取为 html 代码。然后标志后代码的颜色发生了变化,就好像它们是html代码一样。

{% elif num > page_obj.number|add:'-3' and num < page_obj.number|add:'-3' %}
    <a class="btn btn-outline-info mb-4" href="?page={{num}}">

在此处输入图像描述

它使我的分页器上的其他页码消失了。

这就是我的分页器的样子:

在此处输入图像描述

不幸的是,这发生了:

在此处输入图像描述

我在当前页面之前和之后缺少两组数字。

标签: pythondjango

解决方案


永远不会满足您的布尔条件。

elif num > page_obj.number|add:'-3' and num < page_obj.number|add:'-3'

您正在检查是否num大于page_obj.number-3然后检查是否num也小于page_obj.number-3。不可能两者兼而有之。

也许您正在寻找:

elif num > page_obj.number|add:'-3' and num < page_obj.number|add:'3'

推荐阅读