【Flask】FlaskWeb开发上手点滴(02)-模板
2017-02-08 15:10
399 查看
模板是一个包含响应的文本的文件,期中包含用占位变量表示的动态部分,其具体值只在请求的上下文中才能知道。使用真实替换变量,再返回最终得到的响应字符串,这一过程称为“渲染”。
在Falsk中使用Jinja2这个模板引擎。
默认情况下,Falsk在程序/项目的文件夹中的templates子文件夹中寻找模板。我们可以将定义好的模板保存在这个文件夹中。
现在我们改造下“01讲中的首例”:
然后分别在templates文件夹下新建两个文件index.html和user.html,
内容分别如下:
从这里我们可以看到:Falsk提供render_template函数把jinja2模板引擎集成到了程序中。
render_template函数的第一个参数是模板的文件名。随后的参数都是键值对,表示末班中变量对应的真实值。
2.1.2jinja2变量过滤器
注意:很多情况下需要显示变量中存储的HTML代码,这时就需要使用safe过滤器。但是,千万不要在不可信的值上使用safe过滤器,例如用户在表单中输入的文本。
2.1.3控制结构
在Falsk中使用Jinja2这个模板引擎。
2.1 jinja2模板引擎
2.1.1渲染模板默认情况下,Falsk在程序/项目的文件夹中的templates子文件夹中寻找模板。我们可以将定义好的模板保存在这个文件夹中。
现在我们改造下“01讲中的首例”:
from flask import Flask,render_template from flask import request app = Flask(__name__) @app.route('/') def index(): user_agent=request.headers.get('User-Agent') return render_template('index.html',user_agent=user_agent) @app.route('/user/<name>') def hello_world(name): return render_template('user.html',name=name) if __name__ == '__main__': app.run(debug=True)
然后分别在templates文件夹下新建两个文件index.html和user.html,
内容分别如下:
#index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <p>欢迎您!您的浏览器是:{{user_agent}}</p> </body> </html>
#user.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1 style="color: coral">Hello {{name}}</h1> </body> </html>
从这里我们可以看到:Falsk提供render_template函数把jinja2模板引擎集成到了程序中。
render_template函数的第一个参数是模板的文件名。随后的参数都是键值对,表示末班中变量对应的真实值。
2.1.2jinja2变量过滤器
注意:很多情况下需要显示变量中存储的HTML代码,这时就需要使用safe过滤器。但是,千万不要在不可信的值上使用safe过滤器,例如用户在表单中输入的文本。
2.1.3控制结构
相关文章推荐
- 【Flask】FlaskWeb开发上手点滴(01)-入门
- Flask web 开发 Jinja2 模板
- PHP-Web应用程序开发:使用模板(入门)
- Java Web开发构想(2) -- 3.页面资源, 4.页面模板层
- ASP.NET Web 应用开发实战快速上手系列 2——C#基础
- 【PHP web 2.0 开发实践】2.9 Smarty 模板引擎
- iPhone和iPad Web开发上手指南
- WebControl开发点滴1:config读取不到
- php5与mysql5 web 开发技术详解-12 Smarty与模板技术
- web开发中的点滴
- DIY开发技巧之-如何找到需要修改的插件或模板文件 phpweb
- Go Web开发之Revel - 模板
- asp模板引擎终结者(WEB开发之ASP模式)
- 【Vegas原创】在域中开发web parts札记(持续更新中...Last Update:08-02-27)
- 比较不错的asp模板引终极讲解(WEB开发之ASP模式)
- 【原创】ASP.NET Web 应用开发实战快速上手系列 1——配置环境及预备知识(框架、VS、C#)
- PHP-Web 应用程序开发:使用模板
- 比较不错的asp模板引终极讲解(WEB开发之ASP模式)
- ASP WEB 开发常见问题点滴.......
- !金尚网上商城-01、Web项目开发的一般流程》》02、分析与设计之架构分析与