题记:写此文章呢是因为本人在些项目的时候遇到了些关于判断上的问题,然后总结了一下几点。然后分享给大家,希望能给你带来帮助!、
fequal / ifnotequal
在模板语言里比较两个值并且在他们一致的时候显示一些内容,Django提供了 ifequal 和 ifnotequal 标签。ifequal 标签比较两个值,如果相等,则显示{% ifequal %}和{% endifequal %}之间的所有内容ifnotequal 标签 与 ifequal 对应,当两个值不相等时显示。与 if 标签一样,ifequal 和 ifnotequal标签也支持 else 标签,但不支持elif,可以在else里面嵌套if语句。参数可以是硬编码的 string(单引号和双引号均可),也可以是数字,但不能是 True 或者 False 。其它的参数类型,如字典、列表或 boolean 不能硬编码在 ifequal 和 ifnotequal标签里面。 如果你需要测试某个变量是 True 或 False, 用 if 标签即可;用 ifequal标签与 1, 0 比较也可以。只能两个参数,不能多也不能少。
方法一:ifequal语句
{% ifequal sort 'hot' %}active{% endifequal %}
判断后端传来的sort变量与字符串‘hot’是否相等.
方法二:if语句
{% if sort == 'hot' %}active{% endif %}
很简单直观的if语句。当然,判断不相等的话,可以用ifnoteuqal 与 if xxx != xxx
写法大概如下几种:
{# 如果 a1 == a2 则显示 #}
{% ifequal a1 a2 %}
<h1>equal!</h1>
{% else %}
<h1>not equal!</h1>
{% endifequal %}
{# 如果 a1 != a2 则显示 #}
{% ifnotequal a1 a2 %}
<h1>not equal!</h1>
{% endifnotequal %}
{# 如果 a1 == 'word' 则显示 #}
{% ifequal a1 'word' %}
<h1>a1=word</h1>
{% endifequal %}
{# 如果 a2 == 55.23 则显示 #}
{% ifequal a2 55.23 %}
<h1>a2=55.23</h1>
{% endifequal %}
{# 如果 a3 == {{ a4 }} 则显示 #}
{% ifequal a2 {{ a4 }} %}
<h1>a2={{ a4 }}</h1>
{% endifequal %}