详解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 list中append()与extend()用法分享
Mar 24 Python
使用Python中的greenlet包实现并发编程的入门教程
Apr 16 Python
Python编程中字符串和列表的基本知识讲解
Oct 14 Python
Python与Java间Socket通信实例代码
Mar 06 Python
解决python nohup linux 后台运行输出的问题
May 11 Python
对python中的iter()函数与next()函数详解
Oct 18 Python
python游戏地图最短路径求解
Jan 16 Python
Flask框架模板渲染操作简单示例
Jul 31 Python
快速解决docker-py api版本不兼容的问题
Aug 30 Python
np.random.seed() 的使用详解
Jan 14 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
Jun 17 Python
python import 上级目录的导入
Nov 03 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
PHP计数器的实现代码
2013/06/08 PHP
php获取操作系统语言代码
2013/11/04 PHP
PHP字符串的递增和递减示例介绍
2014/02/11 PHP
10条php编程小技巧
2015/07/07 PHP
php类中的$this,static,final,const,self这几个关键字使用方法
2015/12/14 PHP
Laravel框架查询构造器 CURD操作示例
2019/09/04 PHP
你的 mixin 真的兼容 ECMAScript 5 吗?
2013/04/11 Javascript
javascript中定义私有方法说明(private method)
2014/01/27 Javascript
分享我的jquery实现下拉菜单心的
2015/11/29 Javascript
jQuery Position方法使用和兼容性
2017/08/23 jQuery
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
Javascript中从学习bind到实现bind的过程
2018/01/05 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
2018/03/09 Javascript
JavaScript实现区块链
2018/03/14 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
2018/08/28 jQuery
详解使用angular框架离线你的应用(pwa指南)
2019/01/31 Javascript
vue组件间通信六种方式(总结篇)
2019/05/15 Javascript
简述vue-cli中chainWebpack的使用方法
2019/07/30 Javascript
layer父页获取弹出层输入框里面的值方法
2019/09/02 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
JS获取一个字符串中指定字符串第n次出现的位置
2021/02/10 Javascript
[01:02:02]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第二局
2016/02/25 DOTA
[01:22]DOTA2神秘商店携大量周边降临完美大师赛
2017/11/07 DOTA
linux下安装easy_install的方法
2013/02/10 Python
在Django的模型中执行原始SQL查询的方法
2015/07/21 Python
机器学习python实战之手写数字识别
2017/11/01 Python
pygame实现简易飞机大战
2018/09/11 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
使用django的ORM框架按月统计近一年内的数据方法
2019/07/18 Python
利用CSS3实现圆角的outline效果的教程
2015/06/05 HTML / CSS
HTML5新标签兼容——&gt; 的两种方法
2018/09/12 HTML / CSS
巴基斯坦电子产品购物网站:Home Shopping
2017/09/14 全球购物
建筑安全标语
2014/06/07 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
导游词之贵州百里杜鹃
2019/10/29 职场文书