7 Flask 基本概念
Flask 是一个用 Python 编写的轻量级 web 应用框架,它采用 Werkzeug 作为底层库,并使用 Jinja2 作为模板引擎。接下来,我们将探讨一些 Flask 的基本概念,并通过实际案例来加深理解。
创建第一个 Flask 应用
Flask 应用的创建非常简单。你只需要安装 Flask 并编写几行代码。
安装 Flask
1 | pip install Flask |
创建基本应用
首先,创建名为 app.py
的文件,内容如下:
1 | from flask import Flask |
解释代码
from flask import Flask
:导入 Flask 类。app = Flask(__name__)
:创建一个 Flask 应用实例,__name__
用于确定资源的根路径。@app.route('/')
:使用装饰器定义 URL 路径,这里表示根路径/
。def hello():
:定义处理该路径请求的函数。app.run(debug=True)
:启动 Flask 开发服务器,开启调试模式。
运行应用
在终端中,进入包含 app.py
的目录,然后运行以下命令:
1 | python app.py |
在浏览器中访问 http://127.0.0.1:5000/
,你将看到 Hello, Flask!
。
路由和视图
Flask 通过路由来将 URL 映射到 Python 函数(视图)。简而言之,路由就是告诉 Flask 如何响应特定的 URL。
定义多个路由
你可以定义多个路由,每个路由对应一个视图函数。例如:
1 |
|
当用户访问 http://127.0.0.1:5000/about
时,将显示 This is the About page.
。
模板渲染
Flask 使用 Jinja2 模板引擎来渲染HTML页面。这使得在网页中嵌入 Python 代码变得简单而高效。
使用模板
首先,创建一个名为 templates
的文件夹,在其中创建一个 index.html
文件,内容如下:
1 |
|
接下来,在 app.py
中修改视图函数以渲染模板:
1 | from flask import render_template |
结果
访问 http://127.0.0.1:5000/
,你将看到渲染后的 HTML 页面,其中的内容由视图函数传递进来。
处理表单
Flask 允许轻松处理表单数据。你可以使用 Flask 的请求对象 request
来访问提交的数据。
创建表单
修改 index.html
添加一个表单:
1 | <form action="/submit" method="post"> |
处理表单提交
在 app.py
中添加下面的代码来处理表单提交:
1 | from flask import request |
结果
当你在表单中输入用户名并提交时,访问 http://127.0.0.1:5000/submit
,你将看到 Hello, [username]!
。
小结
Flask 是一个强大而灵活的框架,可以轻松构建 web 应用。通过掌握基本概念如路由、视图、模板渲染和表单处理,你可以快速入门并构建你自己的 Flask 应用。随着你对 Flask 的深入了解,可以探索更多的高级功能,如数据库集成、会话管理和 RESTful API 构建等。
7 Flask 基本概念