您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Flask中jinja2的继承实现方法及实例

51自学网 2021-10-30 22:53:36
  python
这篇教程Flask中jinja2的继承实现方法及实例写得很实用,希望能帮到您。

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

1、说明

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

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

2、实例

<!DOCTYPE html><html><head>  {% block head %}  <link rel="stylesheet" href="style.css" rel="external nofollow" />  <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 %}  # 其他不修改的原封不同的继承

实例扩展:

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的继承如何实现内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


基于PyTorch中view的用法说明
对Pytorch 中的contiguous理解说明
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。