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读写ini文件示例(python读写文件)
Mar 25 Python
python实现矩阵乘法的方法
Jun 28 Python
Python第三方库的安装方法总结
Jun 06 Python
python os用法总结
Jun 08 Python
python 3.6.5 安装配置方法图文教程
Sep 18 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
Nov 19 Python
Python 中的pygame安装与配置教程详解
Feb 10 Python
Flask模板引擎Jinja2使用实例
Apr 23 Python
Python模拟伯努利试验和二项分布代码实例
May 27 Python
Python中logging日志记录到文件及自动分割的操作代码
Aug 05 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
Dec 24 Python
Python Django模型详解
Oct 05 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
PHP中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
实例讲解PHP页面静态化
2018/02/05 PHP
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
datagrid框架的删除添加与修改
2013/04/08 Javascript
Node调试工具JSHint的安装及配置教程
2014/05/27 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
深入分析javascript中console命令
2016/08/14 Javascript
jQuery的extend方法【三种】
2016/12/14 Javascript
AngularJS框架的ng-app指令与自动加载实现方法分析
2017/01/04 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
理解 JavaScript EventEmitter
2018/03/29 Javascript
JS实现的DOM插入节点操作示例
2018/04/04 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
js判断浏览器的环境(pc端,移动端,还是微信浏览器)
2020/12/24 Javascript
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
js实现无缝轮播图
2020/03/09 Javascript
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
Python2.x版本中基本的中文编码问题解决
2015/10/12 Python
Python中使用platform模块获取系统信息的用法教程
2016/07/08 Python
python登录并爬取淘宝信息代码示例
2017/12/09 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
2019/06/03 Python
Python实现个人微信号自动监控告警的示例
2019/07/03 Python
python 一个figure上显示多个图像的实例
2019/07/08 Python
python为Django项目上的每个应用程序创建不同的自定义404页面(最佳答案)
2020/03/09 Python
python算的上脚本语言吗
2020/06/22 Python
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
音乐表演专业毕业生求职信
2013/10/14 职场文书
详细的大学生创业计划书模板
2014/01/27 职场文书
中学生教师节演讲稿
2014/09/03 职场文书
2014年高校辅导员工作总结
2014/12/09 职场文书
领导新年致辞2016
2015/07/29 职场文书
2015年社区反邪教工作总结
2015/10/14 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
2016春季运动会开幕词
2016/03/04 职场文书
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang