Flask Web开发实验二:模板

目录

3.1 Jinja2模板引擎

示例 3-1 templates/index.html:Jinja2 模板

示例 3-2 templates/user.html:Jinja2 模板

 示例 2-2 hello.py:包含动态路由的 Flask 程序

示例2-2结束

3.1.1 渲染模板

示例 3-3 hello.py:渲染模板(示例3-2已经实现)

3.1.2 变量

Jinja2 能识别所有类型的变量,甚至是一些复杂的类型,例如列表、字典和对象。在模板 中使用变量的一些示例如下:

表 3-1 列出了 Jinja2 提供的部分常用过滤器。

3.1.3 控制结构

(1)下面这个例子展示了如何在模板中使用条件控制语句:

(2)下例展示了如何使用 for 循环实现这一需求:

(3)Jinja2 还支持宏。宏类似于 Python 代码中的函数。例如:

(4)为了重复使用宏,我们可以将其保存在单独的文件中,

(5)需要在多处重复使用的模板代码片段可以写入单独的文件,再包含在所有模板中,以避免重复:

(6)另一种重复使用代码的强大方式是模板继承,它类似于 Python 代码中的类继承。首先,创建一个名为 base.html 的基模板:   

(7)block 标签定义的元素可在衍生模板中修改。在本例中,我们定义了名为 head、title 和body 的块。注意,title 包含在 head 中。下面这个示例是基模板的衍生模板:


3.1 Jinja2模板引擎

形式最简单的 Jinja2 模板就是一个包含响应文本的文件。示例 3-1 是一个 Jinja2 模板,它
和示例 2-1 index() 视图函数的响应一样。

你可能感兴趣的:(Flask,Web开发,flask,前端,python)