Python-Flask开发笔记
Flask介绍
Flask 是典型的微框架,作为 Web 框架来说,它仅保留了核心功能:请求响应处理和模板渲染。这两类功能分别由 Werkzeug(WSGI 工具库)完成和 Jinja(模板渲染库)完成
demo分析
1 |
|
- 首先我们从 flask 包导入 Flask 类,通过实例化这个类,创建一个程序对象 app:
- 然后定义一个视图函数,其实就是请求处理函数,它可以处理请求。
- 配置路由:我们使用 app.route() 装饰器来为这个函数绑定对应的 URL,当用户在浏览器访问这个 URL 的时候,就会触发这个函数,获取返回值,并把返回值显示到浏览器窗口
整个请求的处理过程如下所示:
- 当用户在浏览器地址栏访问这个地址,在这里即 http://localhost:5000/
- 服务器解析请求,发现请求 URL 匹配的 URL 规则是 /,因此调用对应的处理函数 hello()
- 获取 hello() 函数的返回值,处理后返回给客户端(浏览器)
- 浏览器接受响应,将其显示在窗口上
模板
在一般的 Web 程序里,访问一个地址通常会返回一个包含各类信息的 HTML 页面。因为我们的程序是动态的,页面中的某些信息需要根据不同的情况来进行调整,比如对登录和未登录用户显示不同的信息,所以页面需要在用户访问时根据程序逻辑动态生成。
我们把包含变量和运算逻辑的 HTML 或其他格式的文本叫做模板,执行这些变量替换和逻辑计算工作的过程被称为渲染,这个工作由我们这一章要学习使用的模板渲染引擎——Jinja2 来完成。
按照默认的设置,Flask 会从程序实例所在模块同级目录的 templates 文件夹中寻找模板
模板基本语法
在模板里,你需要添加特定的定界符将 Jinja2 语句和变量标记出来,下面是三种常用的定界符:
1 |
|
渲染模板
返回渲染好的模板作为响应
1 |
|
render_template() 函数可以把模板渲染出来,参数为模板文件名,和模板内部使用的变量作为关键字参数
Python-Flask开发笔记
https://vendestine.com/flask-note