Jinja“==”(比较条件)不起作用?

时间:2018-04-20 16:50:21

标签: html django templates jinja2

在django中编写应用程序时,我遇到了一个问题。我想制作页码链接,当前页面不是链接。所以在模板中我这样做:

{% for i in pages %} 
{% if i == curr_page %} {{ i }}
{% else %} <a href="...">{{ i }}</a>
{% endif %}

唯一的问题? Jinja似乎没有注意到两个数字相等。我已将第2行更改为{% if i != curr_page %} {{i}}!={{curr_page}}并获得“... 5!= 6 6!= 6 7!= 6 ...”。

我该怎么办?

1 个答案:

答案 0 :(得分:2)

因为它们的数据类型不同。在您的视图中,在转到上下文int之前将其转换为dict

pages = list(map(int, pages))
curr_page = int(curr_page)