二十一:jinja2之模板继承
模板继承可以把有共性的一些代码抽出来放到父模板中,其他需要次特性的文件继承模板即可
在jinja2中,使用extends来继承定义好的模板,使用{% block 位置名%} {% endblock %}来预留位置
自己需要定义一个父模板
其他html继承base模板即可拥有所有的模块
block继承的只是位置,默认不继承内容,如果要在指定模块中继承父模板的改模块下的内容,需使用super()方法
调用另一个block中的代码:可以通过{{ self.block名字() }}获取
注意事项
1、子模板需在第一行代码就继承父模板,否则继承代码之前的代码会失效
2、子模板中如果要实现自己的代码,需放到对应的block中,否则将不会渲染,即子模板响应渲染内容,只能把内容放到父模板预留的位置里面
讨论群:249728408