Django 模板标签

常用标签

  • if/elif/else
    • 可以使用and/or/in/not/==/!=/<=/>=
    • ifequal/ifnotequal
  {% ifequal name 'DoubleU' %}
     DoubleU来了
  {% endifequal %}
  • for...in...
    • forloop.counter:当前迭代的次数,下标从1开始。1,2,3
    • forloop.counter0:当前迭代的次数,下标从e开始。0,1,2
    • forloop.revcounter:跟forloop.counter一样,下标从大到小。3,2,1
    • forloop.revcountere:跟forloop.counter0一样,下标从大到小。2,1,0
    • forloop.first:返回bool类型,如果是第一次迭代,返回true,否则返回false
    • forloop.last:返回bool类型,如果是最后一次迭代,返回True,否则返回False
    • forloop.parentloop:如果发生多层for循环嵌套,那么这个变量返回的是上一层的for
  • for...in...empty...:如果没有数据,跳转到empty中
  • load:加载第三方标签。最常用的是`
  • url:返回一个命名了的URL的绝对路径
  • with...as...:给一个变量取别名
  • autoescape:开启和关闭自动转义{% autoescape off %}
  • comment:多行注释


模板的继承与引用

  • 继承使用extends标签实现、通过使用block来给子模板开放接口
    • extends必须是模板中的第一个出现的标签
    • 子模板中的所有内容,必须出现在父模板定义好的block中,否则django将不会渲染
    • 尽可能多的定义block,方便子模板实现更细的需求
    • 如果在某个block中,要使用父模板的内容,使用block.super获取
  • 引用
{% include 'books/test2.html' %}
posted @ 2021-08-10 20:39  三个零  阅读(102)  评论(0编辑  收藏  举报