时间:2021-05-22
在继承的使用上,我们最早接触的是父类和子类的继承。不过Flask框架中的继承要简单一些,只要有一个原文件,便可以对其进行继承和修改的操作了。在修改的内容方面,可以通过关键字来进行实现。下面我们就Flask中jinja2的继承的实现先进行理论的介绍,然后带来实例供大家练习。
Jinja2中最强大的部分是模板继承。通过模板继承,我们可以创建一个基本(框架)文件,其他文件可以从中继承,然后再根据需要对其进行修改。
在jinja2的框架文件中,使用block关键字表示它包含的内容可以被修改。
这里定义了四处 block,即:head,title,content,footer。那怎么进行继承和变量替换呢?注意看下面的文件
{% extend "base.html" %} # 继承base.html文件{% block title %} Dachenzi {% endblock %} # 定制title部分的内容{% block head %}{{ super() }} # 用于获取原有的信息<style type='text/css'>.important { color: #FFFFFF }</style>{% endblock %} # 其他不修改的原封不同的继承实例扩展:
jinja2模板继承
父亲:
<!DOCTYPE html><html><head> <title>模板继承</title></head><body> <span>这是基模板</span> <div id="content">{% block content %}{% endblock %}</div></body></html>用{% block content %}{% endblock %}包含jinja2的字模板块;
子:
<!DOCTYPE html><html><head> <title>模板继承</title></head><body> {% extend "jinja2_模板继承.html"%} {% block content %} <p class="importtant">我在子模板</p></body></html>{% extends "jinja2_模板继承.html"%}标签是这里的关键,告诉模板引擎这个模板继承自另外一个模板。该标签必须是子模板的第一个标签,解释器会自动将父亲的内容复制到子模板中!
结果应该是这样:
<!DOCTYPE html><html><head> <title>模板继承</title></head><body> <span>这是基模板</span> <div id="content"> <p class="importtant">我在子模板</p> </div></body></html>到此这篇关于Flask中jinja2的继承实现方法及实例的文章就介绍到这了,更多相关Flask中jinja2的继承如何实现内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Flask是一个使用Python编写的轻量级Web应用框架。其WSGI工具箱采用Werkzeug,模板引擎则使用Jinja2。很多功能的实现都参考了django
Flask的模板功能是基于Jinja2模板引擎来实现的。模板文件存放在当前目前下的子目录templates(一定要使用这个名字)下。main.py代码如下:fr
Flask提供的模板引擎为Jinja2,易于使用,功能强大。模板仅仅是文本文件,它可以生成任何基于文本的格式(HTML、XML、CSV、LaTex等等)。它并没
模板的用处jinja2可以用来修改配置文件,把配置文件的关键地方可以用变量来进行替换模板语法模板语法和django的模板语法差不多在jinja2中,存在三种语法
tornado默认有一个模板引擎但是功能简单(其实我能用到的都差不多)使用起来颇为麻烦,而jinja2语法与django模板相似所以决定使用他.下载jinja2