详解Django中的ifequal和ifnotequal标签使用


Posted in Python onJuly 16, 2015

Django模板系统压根儿就没想过实现一个全功能的编程语言,所以它不允许我们在模板中执行Python的语句(还是那句话,要了解更多请参看理念和限制小节)。 但是比较两个变量的值并且显示一些结果实在是个太常见的需求了,所以Django提供了 {% ifequal %} 标签供我们使用。

{% ifequal %} 标签比较两个值,当他们相等时,显示在 {% ifequal %} 和 {% endifequal %} 之中所有的值。

下面的例子比较两个模板变量 user 和 currentuser :

{% ifequal user currentuser %}
  <h1>Welcome!</h1>
{% endifequal %}

参数可以是硬编码的字符串,随便用单引号或者双引号引起来,所以下列代码都是正确的:

{% ifequal section 'sitenews' %}
  <h1>Site News</h1>
{% endifequal %}

{% ifequal section "community" %}
  <h1>Community</h1>
{% endifequal %}

和 {% if %} 类似, {% ifequal %} 支持可选的 {% else%} 标签:

{% ifequal section 'sitenews' %}
  <h1>Site News</h1>
{% else %}
  <h1>No News Here</h1>
{% endifequal %}

只有模板变量,字符串,整数和小数可以作为 {% ifequal %} 标签的参数。下面是合法参数的例子:

{% ifequal variable 1 %}
{% ifequal variable 1.23 %}
{% ifequal variable 'foo' %}
{% ifequal variable "foo" %}

其他任何类型,例如Python的字典类型、列表类型、布尔类型,不能用在 {% ifequal %} 中。 下面是些错误的例子:

{% ifequal variable True %}
{% ifequal variable [1, 2, 3] %}
{% ifequal variable {'key': 'value'} %}

如果你需要判断变量是真还是假,请使用 {% if %} 来替代 {% ifequal %} 。

Python 相关文章推荐
python实现在无须过多援引的情况下创建字典的方法
Sep 25 Python
Python函数中*args和**kwargs来传递变长参数的用法
Jan 26 Python
python rsa 加密解密
Mar 20 Python
Python 中pandas.read_excel详细介绍
Jun 23 Python
python数据预处理之将类别数据转换为数值的方法
Jul 05 Python
python不换行之end=与逗号的意思及用途
Nov 21 Python
python可视化实现代码
Jan 15 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
Nov 05 Python
Anaconda3+tensorflow2.0.0+PyCharm安装与环境搭建(图文)
Feb 18 Python
详解python with 上下文管理器
Sep 02 Python
解析目标检测之IoU
Jun 26 Python
Python OpenCV之常用滤波器使用详解
Apr 07 Python
Python实现数通设备端口使用情况监控实例
Jul 15 #Python
Python实现快速多线程ping的方法
Jul 15 #Python
Python实现将目录中TXT合并成一个大TXT文件的方法
Jul 15 #Python
Python的Django框架中if标签的相关使用
Jul 15 #Python
在Python的Django框架中调用方法和处理无效变量
Jul 15 #Python
python实现判断数组是否包含指定元素的方法
Jul 15 #Python
python获取元素在数组中索引号的方法
Jul 15 #Python
You might like
浅析SVN常见问题及解决方法
2013/06/21 PHP
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
php微信开发之图片回复功能
2018/06/14 PHP
Linux下 php7安装redis的方法
2018/11/01 PHP
jQuery第三课 修改元素属性及内容的代码
2010/03/14 Javascript
Dom 学习总结以及实例的使用介绍
2013/04/24 Javascript
jquery实现带二级菜单的导航示例
2014/04/28 Javascript
js创建表单元素并使用submit进行提交
2014/08/14 Javascript
javascript实现倒计时(精确到秒)
2015/06/26 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
2016/05/24 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
jquery实现弹窗功能(窗口居中显示)
2017/02/27 Javascript
Vue.js实现文章评论和回复评论功能
2020/05/30 Javascript
分享ES6的7个实用技巧
2018/01/18 Javascript
vue最简单的前后端交互示例详解
2018/10/11 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
ES6入门教程之let、const的使用方法
2019/04/13 Javascript
分享8个JavaScript库可更好地处理本地存储
2020/10/12 Javascript
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
[01:14]DOTA2亚洲邀请赛 ShowOpen
2015/02/07 DOTA
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
Python实现文件内容批量追加的方法示例
2017/08/29 Python
深入浅析Python传值与传址
2018/07/10 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
Python 200行代码实现一个滑动验证码过程详解
2019/07/11 Python
浅析Python 引号、注释、字符串
2019/07/25 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
AmazeUI 等分网格的实现示例
2020/08/25 HTML / CSS
东芝官网商城:还原日式美学,打造美好生活
2018/12/27 全球购物
轻化专业学生实习自我鉴定
2013/09/20 职场文书
公益活动策划方案
2014/01/09 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
公安个人四风问题对照检查及整改措施
2014/10/28 职场文书
Springboot使用Spring Data JPA实现数据库操作
2021/06/30 Java/Android
vscode远程免密登入Linux服务器的配置方法
2022/06/28 Servers