Django模板语言 Tags使用详解


Posted in Python onSeptember 09, 2019

Tags

# 普通for循环

<ul>
{% for user in user_list %}
  <li>{{ user.name }}</li>
{% endfor %}
</ul>

for循环可用的一些参数:

Variable Description
forloop.counter 当前循环的索引值(从1开始)
forloop.counter0 当前循环的索引值(从0开始)
forloop.revcounter 当前循环的倒序索引值(从1开始)
forloop.revcounter0 当前循环的倒序索引值(从0开始)
forloop.first 当前循环是不是第一次循环(布尔值)
forloop.last 当前循环是不是最后一次循环(布尔值)
forloop.parentloop 本层循环的外层循环

for ... empty

# 如果user_list 里面元素为0个的时候执行 empty

<ul>
{% for user in user_list %}
  <li>{{ user.name }}</li>
{% empty %}
  <li>空空如也</li>
{% endfor %}
</ul>

if判断

# if,elif和else
{% if user_list %}
 用户人数:{{ user_list|length }}
{% elif black_list %}
 黑名单数:{{ black_list|length }}
{% else %}
 没有用户
{% endif %}
# 当然也可以只有if和else

{% if user_list|length > 5 %}
 七座豪华SUV
{% else %}
  黄包车
{% endif %}

# if语句支持 and 、or、==、>、<、!=、<=、>=、in、not in、is、is not判断。

with

# 定义一个中间变量,多用于给一个复杂的变量起别名。

# 注意等号左右不要加空格。

{% with total=business.employees.count %}
  {{ total }} employee{{ total|pluralize }}
{% endwith %}

# 或

{% with business.employees.count as total %}
  {{ total }} employee{{ total|pluralize }}
{% endwith %}

csrf_token

这个标签用于跨站请求伪造保护。

在页面的form表单里面写上{% csrf_token %}

注意事项

Django的模板语言不支持连续判断,即不支持以下写法:

{% if a > b > c %}
...
{% endif %}

Django的模板语言中属性的优先级大于方法

def xx(request):
  d = {"a": 1, "b": 2, "c": 3, "items": "100"}
  return render(request, "xx.html", {"data": d})

如上,我们在使用render方法渲染一个页面的时候,传的字典d有一个key是items并且还有默认的 d.items() 方法,此时在模板语言中:

{{ data.items }}

默认会取d的items key的值。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之编写类之一创建实例
Oct 11 Python
通过代码实例展示Python中列表生成式的用法
Mar 31 Python
Python爬取京东的商品分类与链接
Aug 26 Python
Python安装模块的常见问题及解决方法
Feb 05 Python
dataframe设置两个条件取值的实例
Apr 12 Python
Windows 64位下python3安装nltk模块
Sep 19 Python
解决pytorch-yolov3 train 报错的问题
Feb 18 Python
python实现堆排序的实例讲解
Feb 21 Python
python中shell执行知识点
May 06 Python
给ubuntu18安装python3.7的详细教程
Jun 08 Python
Pycharm-community-2020.2.3 社区版安装教程图文详解
Dec 08 Python
python反扒机制的5种解决方法
Feb 06 Python
Python中turtle库的使用实例
Sep 09 #Python
Django之路由层的实现
Sep 09 #Python
python中web框架的自定义创建
Sep 08 #Python
python web框架中实现原生分页
Sep 08 #Python
python中open函数的基本用法示例
Sep 07 #Python
Python3显示当前时间、计算时间差及时间加减法示例代码
Sep 07 #Python
利用python计算时间差(返回天数)
Sep 07 #Python
You might like
JQuery 学习笔记 选择器之一
2009/07/23 Javascript
js 输出内容到新窗口具体实现代码
2013/05/31 Javascript
初识SmartJS - AOP三剑客
2014/06/08 Javascript
2014 年最热门的21款JavaScript框架推荐
2014/12/25 Javascript
基于jquery实现省市联动效果
2015/11/23 Javascript
nodejs修复ipa处理过的png图片
2016/02/17 NodeJs
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
前端js实现文件的断点续传 后端PHP文件接收
2016/10/14 Javascript
jquery控制页面的展开和隐藏实现方法(推荐)
2016/10/15 Javascript
浅析如何利用angular结合translate为项目实现国际化
2016/12/08 Javascript
VUE中v-model和v-for指令详解
2017/06/23 Javascript
Angular2关于@angular/cli默认端口号配置的问题
2017/07/15 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
在vue中解决提示警告 for循环报错的方法
2018/09/28 Javascript
详解微信小程序之scroll-view的flex布局问题
2019/01/16 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
Vue中使用wangeditor富文本编辑的问题
2021/02/07 Vue.js
Python中使用gzip模块压缩文件的简单教程
2015/04/08 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
python3 tkinter实现添加图片和文本
2019/11/26 Python
python 消费 kafka 数据教程
2019/12/21 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
Python实现读取并写入Excel文件过程解析
2020/05/27 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
Marc O’Polo俄罗斯官方在线商店:德国高端时尚品牌
2019/12/26 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
英语老师推荐信
2014/02/26 职场文书
图书馆志愿者活动总结
2014/06/27 职场文书
2014教育局对照检查材料思想汇报
2014/09/23 职场文书
道德模范事迹材料
2014/12/20 职场文书
高三语文复习计划
2015/01/19 职场文书
投标单位介绍信
2015/05/05 职场文书
2015暑期爱心支教策划书
2015/07/14 职场文书
2016年先进班集体事迹材料
2016/02/26 职场文书
WebWorker 封装 JavaScript 沙箱详情
2021/11/02 Javascript
vue3引入highlight.js进行代码高亮的方法实例
2022/04/08 Vue.js