如何在Flask中实现jinja2的继承-创新互联

如何在Flask中实现jinja2的继承?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都创新互联自2013年创立以来,先为琼海等服务建站,琼海等地企业,进行企业商务咨询服务。为琼海企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

1、说明


Jinja2中最强大的部分是模板继承。通过模板继承,我们可以创建一个基本(框架)文件,其他文件可以从中继承,然后再根据需要对其进行修改。

在jinja2的框架文件中,使用block关键字表示它包含的内容可以被修改。

2、实例




  {% block head %}
  
  {% block title %}{% endblock %} - My Webpage
  {% endblock %}


{% block content %}{% endblock %}
  {% block footer %}      {% endblock %}

这里定义了四处 block,即:head,title,content,footer。那怎么进行继承和变量替换呢?注意看下面的文件

{% extend "base.html" %}    # 继承base.html文件
{% block title %} Dachenzi {% endblock %}  # 定制title部分的内容
{% block head %}
{
{ super() }}    # 用于获取原有的信息

.important { color: #FFFFFF }

{% endblock %}  
# 其他不修改的原封不同的继承

实例扩展:

jinja2模板继承

父亲:




 模板继承


 这是基模板
 {% block content %}{% endblock %}

用{% block content %}{% endblock %}包含jinja2的字模板块;

子:




 模板继承


 {% extend "jinja2_模板继承.html"%}
 {% block content %}
 我在子模板

{% extends "jinja2_模板继承.html"%}标签是这里的关键,告诉模板引擎这个模板继承自另外一个模板。该标签必须是子模板的第一个标签,解释器会自动将父亲的内容复制到子模板中!

结果应该是这样:




 模板继承


 这是基模板
 
   我在子模板

  

看完上述内容,你们掌握如何在Flask中实现jinja2的继承的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


网站标题:如何在Flask中实现jinja2的继承-创新互联
本文网址:http://myzitong.com/article/cdjgsh.html

其他资讯