侧边栏壁纸
博主头像
拾荒的小海螺博主等级

只有想不到的,没有做不到的

  • 累计撰写 140 篇文章
  • 累计创建 15 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录
WEB

Python:如何搭建 Flask 应用的技术指南

拾荒的小海螺
2024-09-14 / 0 评论 / 0 点赞 / 7 阅读 / 5368 字

1、简述

Flask 是一个轻量级的 Python Web 框架,非常适合快速构建 Web 应用程序。在本博客中,我们将介绍如何从零开始搭建一个 Flask 项目,并展示一个简单的示例应用程序。

image-ordo.png

2、环境准备

在开始之前,请确保已在系统上安装了 Python。您可以通过以下命令来检查是否已安装 Python:

python --version

如果没有安装 Python,请访问 Python 官方网站 下载并安装。

在运行命令行中输入python,确认是否安装成功:

image-duvg.png

3、安装 Flask

自己收集的组件集合requirements.txt:

alembic==1.0.0
asn1crypto==0.24.0
blinker==1.4
certifi==2018.8.13
cffi==1.11.5
chardet==3.0.4
cryptography==2.3.1
Flask==0.10.1
Flask-CKEditor==0.4.2
Flask-Migrate==2.5.2
Flask-MySQLdb==0.2.0
Flask-Script==2.0.6
Flask-Session==0.3.1
Flask-SQLAlchemy==2.3.2
Flask-WTF==0.14.2
idna==2.7
itsdangerous==0.24
jieba==0.39
Jinja2==2.10
Mako==1.0.7
MarkupSafe==1.0
mysqlclient==1.3.13
Pillow==5.2.0
psutil==5.4.7
pycparser==2.18
PyMySQL==0.9.3
python-dateutil==2.7.3
python-editor==1.0.3
qiniu==7.2.6
redis==2.10.6
requests==2.19.1
six==1.11.0
SQLAlchemy==1.2.10
urllib3==1.25.3
Werkzeug==0.14.1
WTForms==2.2.1

安装指令pip3:请确认你python版本是否存在,若未有请下载安装。
python 2.x 指令pip,python 3.x 指令pip3。

pip3 install -r  requirements.txt

若安装过程中组件集合中有未安装成功的,请单独安装例如:

pip3 install requests

4、创建 Flask 应用

在 IDEA 创建Project,请在Project SDK 中选择你Python安装目录:

image-azlu.png

点击Next,选择Flask Project选项:

image-avfn.png

创建一个名为 mxf.py 的文件,并添加以下代码:

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')
def hello_world():
    return "Hello, Flask!"

if __name__ == '__main__':
    app.run(debug=True)

1726284923049.jpg

这是一个最简单的 Flask 应用。@app.route('/') 指定了 URL 路径,当用户访问根路径 (/) 时,hello_world() 函数将返回一个简单的字符串 "Hello, World!"。

点击Edit Configurations,后续集成manager在Script parameters设置当前项目IP和端口号:

runserver --host 127.0.0.1 --port 8080

image-qpxt.png

未集成manager,可以通过修改app.run接口修改

if __name__ == '__main__':
    app.run(host='127.0.0.1',port=80)

打开浏览器,访问 http://127.0.0.1/,您将看到页面显示 "Hello, World!"。

image-eniy.png

5、应用场景

5.1 Flask 的优点

  • 轻量级框架: Flask 是一个微框架,核心功能简单易懂,不会强制使用特定的工具或库。这使得开发者可以自由选择适合自己项目的工具和扩展库。
  • 灵活性高: 由于 Flask 没有内置的 ORM(对象关系映射)或表单验证工具,开发者可以自由选择使用的第三方库,具备高度定制化的能力。
  • 简单易学: Flask 的文档丰富且友好,非常适合初学者。其核心 API 简单易懂,容易上手并能快速搭建出一个可用的 Web 应用。
  • 扩展性强: Flask 拥有大量社区支持的扩展库,可以轻松集成数据库、认证、API 处理等功能。此外,如果需要更复杂的功能,开发者可以通过扩展自定义中间件和功能。
  • 单文件应用: 对于小型项目,Flask 可以使用单个 Python 文件构建和运行 Web 应用,非常适合快速原型开发。

5.2 Flask 的缺点

  • 功能有限: 作为一个微框架,Flask 并不包含完整的 Web 应用功能。相比于 Django 等大型框架,开发者需要自行实现或集成许多功能,例如认证系统、表单处理等。
  • 缺乏规范: Flask 提供的自由度虽然高,但也意味着不同的开发者可能会以不同的方式组织代码和项目结构,这在团队协作时可能带来困惑和维护困难。
  • 复杂性控制: 随着项目规模的增加,Flask 应用可能变得难以维护。开发者需要自己规划和组织项目架构,否则可能会遇到代码冗余和混乱的情况。
  • 社区支持相对较小: 虽然 Flask 社区活跃,但与更大规模的框架(如 Django)相比,其社区规模和资源相对较少,在遇到问题时可能需要更多时间来寻找解决方案。

5.3 Flask 的应用场景

  • 快速原型开发: Flask 是创建原型和 MVP(最小可行产品)的理想选择。开发者可以通过 Flask 快速构建简单的 Web 应用,验证想法并迅速迭代。
  • 小型应用和微服务: 对于不需要复杂功能的小型 Web 应用,Flask 非常适合。此外,Flask 也常用于构建微服务,由于其轻量和灵活性,开发者可以轻松构建并部署微服务组件。
  • RESTful API 开发: Flask 非常适合开发 RESTful API。通过与 Flask-RESTful、Flask-Swagger 等扩展库结合,开发者可以快速构建和文档化 API 接口。
  • 嵌入式系统或脚本工具: Flask 的小巧特性也适合在嵌入式系统或脚本工具中使用,用于创建简单的用户界面或提供 Web 服务。
  • 教育和学习项目: 由于 Flask 的简单性,它也是学习 Web 开发的好选择。学生和初学者可以通过 Flask 了解 Web 框架的基本原理,并掌握构建 Web 应用的技能。

6、总结

通过这篇博客,您已经学习了如何使用 Flask 搭建一个简单的 Python Web 应用。从安装 Flask 到创建模板,并通过传递动态内容使页面更加生动。Flask 提供了极大的灵活性,适合初学者和小型项目。您可以根据需求进一步扩展此应用,添加更多的路由和功能。

通过这篇技术博客,读者不仅可以快速上手 Flask,还可以基于此基础构建更复杂的 Web 应用。如果您有任何问题或建议,欢迎在评论区留言!

0

评论区