Flask中jinja2的继承如何实现?

2024年04月17日 Python51

在继承的使用上,我们最早接触的是父类和子类的继承。不过Flask框架中的继承要简单一些,只要有一个原文件,便可以对其进行继承和修改的操作了。在修改的内容方面,可以通过关键字来进行实现。下面我们就Flask中jinja2的继承的实现先进行理论的介绍,然后带来实例供大家练习。

1、说明

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

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

2、实例

<!DOCTYPE html>
 
<html>
 
<head>
 
    {% block head %}
 
    <link rel="stylesheet" href="style.css"/>
 
    <title>{% block title %}{% endblock %} - My Webpage</title>
 
    {% endblock %}
 
</head>
 
<body>
 
<div id="content">{% block content %}{% endblock %}</div>
 
<div id="footer">
 
    {% block  footer %}
 
    <script>This is javascript code </script>
 
    {% endblock %}
 
</div>
 
</body>
 
</html>

这里定义了四处 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 %}   
 
# 其他不修改的原封不同的继承

以上就是Flask中jinja2继承的实现,只要对于模板有个简单的了解,就能够进行继承的操作啦,大家学会后也可以根据上面得方法进行使用。

本文链接:http://so.lmcjl.com/news/2394/

展开阅读全文