Django模板常用标签

本文详细介绍了在模板中如何使用context传参,包括字典、列表和对象的使用方式,以及if、for等控制结构的语法和特性,如条件判断、遍历操作和循环中的特殊变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模板传参

  • 使用关键字context传参,传参类型为dict类型,在模板中使用字典的key来直接获取到参数
  • 字典、列表、对象,在模板中只能使用点’.'来获取
  • 注意:使用时字典key值的选取不要写python内置函数的名字

模板常用传参

if 标签

  • 使用 {% if %} {% elif %} {% else %} {% endif %} 进行条件判定,使用方法和Python中相同
  • if 中可以使用: == != <= < >= > in not in is is not 等判断运算符

for in 标签

  • 使用{% for book in books %}{% endfor%}来进行遍历
  • 可以对字典、列表、字符串、元组等进行遍历
  • 如果要反向遍历可以使用 {%for book in books reversed %}{endfor}
  • 在遍历字典时需要使用item、keys、values的时候可以直接用点’.'的方式调用
  • forloop.counter 可以显示这是第几次遍历,默认从1开始
  • forloop.counter0 显示当前是第几次遍历,从0开始
  • forloop.revcounter 反向显示是第几次遍历,最后一个为1
  • forloop.revcounter0 反向显示是第几次遍历,最后一个为0
  • forloop.first 是否是第一次遍历
  • forloop.last 是否是最后一次遍历

for in empty 标签

  • 如果for循环中没有值,就会执行empty中的内容

with 标签

  • 用来在模板中定义变量
  • with 可以进行起别名
  • 注意:使用with只能在with标签中使用
  • 注意:使用等号‘=’的时候左右一定不能留有空白

url 标签

  • 使用方法 {% url “url名” %}
  • url传递参数 {%url “url名” 变量名=%}
  • get传参 使用直接拼接的方式

spaceless 标签

  • 用来移除html中的空白字符,包括空格,tab,换行等,不常用

autoescape 标签用来自动转义

  • 转义是只模板渲染的时候会把特殊字符转换为其他字符,如’<’ 会变成’&lt’
  • 使用 {% autoescape off %}{% endautoescape %} 关掉自动转义

verbatim 标签

  • 默认在DTL中会进行解析特殊字符的
  • {% verbatim %}{% endverbatim %} 中的东西不会解析
  • 主要应用于非DTL的模板渲染
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值