Flask教程今天已经进入到第五讲了,我都是从最基础的点入手讲的,相信你也都学的不错吧
今天我们学习的重点有二:模板上下文和模板继承
模板上下文
上节我们了解到,Jinja2中提供了许多的控制结构,作用是为了改变模板的渲染流程。
{% %}是Jinja2中的控制语句,
{
{ }}是Jinja2中的变量,
{# #}是注释。
通常情况下,在渲染模板时调用template_render()函数向模板传入变量,除此之外还可可以使用set、with定义变量
set语句:
在模版中,可以使用set语句来定义变量。示例如下:
{% set username='捡猫课堂' %}
<p>用户名:{
{ username }}</p>
一旦定义了这个变量,那么在后面的代码中,都可以使用这个变量,就类似于Python的定义的全局变量是一样的。
with语句:
with语句定义的变量,只能在with语句块中使用,超过了这个代码块,就不能再使用了。示例代码如下:
{% with classroom = '捡猫班' %}
<p>班级:{
{ classroom }}</p>
{% endwith %}
with语句也不一定要跟一个变量,可以定义一个空的with语句,以后在with块中通过set定义的变量,就只能在这个with块中使用了,
类似于Python中的局部变量
{% with %}
{% set classroom = '捡猫班' %}
<p>班级:{
{ classroom }}</p>
{% endwith %}
常见的模板内置全局变量
config | 当前配置对象 |
request | 当前请求对象 |
session | 当前会话对象 |
g | 与请求绑定的全局变量 |