详解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中的Matplotlib模块入门教程
Apr 15 Python
解决python matplotlib imshow无法显示的问题
May 24 Python
Python使用folium excel绘制point
Jan 03 Python
pyftplib中文乱码问题解决方案
Jan 11 Python
Python基于BeautifulSoup爬取京东商品信息
Jun 01 Python
python中什么是面向对象
Jun 11 Python
浅谈Keras中shuffle和validation_split的顺序
Jun 19 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
Jun 29 Python
Pycharm安装第三方库失败解决方案
Nov 17 Python
关于Python3的import问题(pycharm可以运行命令行import错误)
Nov 18 Python
python多线程和多进程关系详解
Dec 14 Python
Python打包exe时各种异常处理方案总结
May 18 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防止sql注入示例分析和几种常见攻击正则表达式
2014/01/12 PHP
学习php开源项目的源码指南
2014/12/21 PHP
Laravel访问出错提示:`Warning: require(/vendor/autoload.php): failed to open stream: No such file or di解决方法
2019/04/02 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
关于firefox的ElementTraversal 接口 使用说明
2010/11/11 Javascript
基于JQuery实现异步刷新的代码(转载)
2011/03/29 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
jquery加载图片时以淡入方式显示的方法
2015/01/14 Javascript
JQuery工具函数汇总
2015/06/15 Javascript
javascript中传统事件与现代事件
2015/06/23 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
Javascript获取随机数的实现方法
2016/06/22 Javascript
webpack常用配置项配置文件介绍
2016/11/07 Javascript
微信小程序 仿美团分类菜单 swiper分类菜单
2017/04/12 Javascript
详解node服务器中打开html文件的两种方法
2017/09/18 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
2017/12/09 Javascript
浅谈vue中关于checkbox数据绑定v-model指令的个人理解
2018/11/14 Javascript
跟老齐学Python之从if开始语句的征程
2014/09/14 Python
在Linux上安装Python的Flask框架和创建第一个app实例的教程
2015/03/30 Python
基于Python 的进程管理工具supervisor使用指南
2016/09/18 Python
Python企业编码生成系统之系统主要函数设计详解
2019/07/26 Python
Python封装成可带参数的EXE安装包实例
2019/08/24 Python
python 使用pygame工具包实现贪吃蛇游戏(多彩版)
2019/10/30 Python
简单了解python装饰器原理及使用方法
2019/12/18 Python
基于python的opencv图像处理实现对斑马线的检测示例
2020/11/29 Python
详解基于Facecognition+Opencv快速搭建人脸识别及跟踪应用
2021/01/21 Python
全球最大的在线橄榄球商店:Lovell Rugby
2018/05/20 全球购物
Erwin Müller穆勒家居瑞士官网:您整个家庭的邮购公司
2019/12/28 全球购物
课程设计心得体会
2013/12/28 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
讲文明懂礼貌演讲稿
2014/09/11 职场文书
手术室护士个人总结
2015/02/13 职场文书
2015年优质护理服务工作总结
2015/04/08 职场文书
寻找成龙观后感
2015/06/12 职场文书