服务端代码:
- '''
- 前面我们在模板中使用的{{ name }} 结构表示一个变量,它是一种特殊的占位符,告诉模
- 板引擎这个位置的值从渲染模板时使用的数据中获取。
- 除了单单使用变量之外,我们还可以对变量进行一些额外的操作,譬如,让变量的值全部大写,或者是首字母大写,等等。这种改变变量值的行为叫做过滤器。
- '''
- #coding:utf-8
- from flask import Flask, render_template
- app = Flask(__name__)
- class UserModel(object):
- '''对象类型'''
- name = '张珊'
- age = 45
- def __str__(self):
- return "%s-%s" % (self.name, self.age)
- @app.route('/')
- def index():
- '''访问首页'''
- var_str = '这是后端传过来的一个字符串'
- var_str_en = 'this is a string'
- var_html = "<span style='color:#f00;'>这是一个HTML字符串</span>"
- var_list = ['name','1234','元素3']
- var_tuple = ("laowang","tantianran","dengwenqing")
- var_dict = {"key1":"value1","name":"tanzhenxing"}
- var_user = UserModel()
- return render_template("var_index.html",
- var_str = var_str,
- var_str_en = var_str_en,
- var_html = var_html,
- var_list = var_list,
- var_tuple = var_tuple,
- var_dict = var_dict,
- var_user = var_user
- )
- if __name__ == '__main__':
- app.run(debug=True)
前端代码:
- 对应上面后端代码的前端HTML文件(var_index.html)代码:
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta charset="utf-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <title>模板变量</title>
- <link rel="stylesheet" type="text/CSS" href="">
- </head>
- <body>
- <h1>字符串</h1>
- {{ var_str }} <br />
- <!-- jinjia过滤器 将英文字符串变成大写-->
- {{ var_str_en|upper }} <br />
- <!-- jinjia过滤器 应用HTML语法-->
- {{ var_html|safe }}
- <h1>列表</h1>
- {{ var_list }}
- <h1>元组</h1>
- {{ var_tuple }}
- <h1>字典</h1>
- {{ var_dict }}
- <h1>对象</h1>
- {{ var_user }}
- </body>
- </html>
来源: http://www.bubuko.com/infodetail-2077489.html