Templates标签详解

以下是Temlates标签的内容

一、变量

  1. 变量是views传给模板的值(字典)
  2. 遵守标签
  3. 语法:
  • {{var}} 注:找不到var时就不显示var是字典键
  • 点语法
  1. 如果key找到的是对象,可以用点语法如: {{var.属性(或方法)}} 注:方法是不能有括号的,不能传参数。
  2. 字典
  3. 数字索引

二、标签

  1. 语法

{% tag %}{% endtag %}

  1. 作用
  • 在输出中创建文本
  • 控制逻辑和循环
  1. 标签内容
  • if
    if elif else 用于判断
  • for}
{% for tem in list%}
语句
{% endfor %}
{% for tem in list%}
	语句
{% empty %}
	当list为空或列表不存在时执行
{% endfor %}

注:{ forloop.counter }在for中使用,表示当前是第几次循环,从数字1开始。

  • comment
    作用:表示注释
    语法:

{% comment %}
注释内容
{% endcomment%}

  • ifequal | ifnotequal
    {% ifequal value1 value2 %}
		当value1=value2时,执行
    {% endifequal %}
  • include
    作用:加载模板并以标签内的参数渲染
    语法:

{% include 参数1 参数2 %}
在ulr中使用
url(path,include(viewspath,namespace=‘appname’)),

  • url
    作用:反向解析
    语法:

{% url ‘namespace:name’ p1 p2%}
注:namespace在include的第二个参数中,name在path的第三个参数中,p1 p2可以传多个参。

  • csrf_token

在模板中from标签中使用{% csrf_token %}

  • block (extends引入后用block)
    作用:用于模板的继承
  • autoescape
    作用:用于转义

三、 过滤器

  1. 作用:在变量显示前修改它
  2. 语法:

{{var | 过滤器 }}

  1. 过滤器的方法:
  • upper 把字母转化为大写
  • lower 把字母转化为小写
  • 过滤器可以传递参数(注:参数要用引号)
    join用法

{{ list | join:‘数据间连结字符’}}

  • 当变量为空或为False时可以设置默认值default
    语法:

{{var | default:str}}

  • 根据给定日期,日期转为字符串

{{ datavar | data:‘y-m-d’}}
其中y年m月d日

  • html转义
    escape

{{ var | add:nu }}

{{var | add:-nu }}

  • 乘、除

{% widthratio varnum num1 num2 %}
注:varnum/num1*num2
num1要除的数
num2要乘的数

{{ varnum | divisibleby:num}}
注:表示varnum除以num

四、注释

{# 单行注释内容#}
多行注释
{% commten % }
多行注释内容
{% endcomment %}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值