模板标签、模板的继承和引用
前面我们学习了模板变量,今天我们来学习模板标签,什么是模板标签?它有什么用?怎么用?如果模板有相同的部分该怎么办?复制粘贴?nonono。看完这篇将会解除疑问哦。
- 模板标签
- 模板的include
- 模板的继承
模板标签
作用:给硬编码加入逻辑,加入循环让代码更简单;
语法:{% tag %} {% endtag %} 或者{% tag 参数 参数 %}
{% if 条件 %} 执行语句 {% endif %}
if+空格+条件
{% for xx in xxx %}执行语句{% endfor %}
中间也是用空格
其中,forloop的用法是两个花括号{{ forloop.first }}
{% with abc=abc.xx.x %}
缓存变量:类似于as的命名,使得代码更简洁
模板的include
解决类似广告的东西;
include为模板的引用。
{% include '路径' %} 路径为templates下的路径
想在哪里引用,就把标签写在哪里。
模板的继承
extends:继承
底层模板我们叫base模板
{% extends ‘路径’ %}
如果只这样继承的话,那么无论写什么,只会有base模板内的内容。
block标签
继承后,肯定要改变一些内容,在base模板文件中想改变的地方前后写block标签,
{% block name %} base里面内容 {% endblock %}
name为自定义名字
然后在继承base模板的文件中
{% block name %} 改变后新内容 {% endblock %}
block标签多次的使用,即可实现想要的效果。
name起的名字要有意义,
如{% block link %}放模板
{% block title%}换标题
这样会简洁明了
聪明的你是否解除疑惑了呢?下章我们来看自定义过滤器和标签。