Python web 开发 flask 实践

1、前言

前文已经介绍了很多关于 python 的算法和脚本的写法,在本文将开启python的 web 的开发,和java 类似的,对于 web 开发也需要引入框架,对于 python 的 web 开发来说常见的有 flask 和 django 两种,在本文中将要介绍的是 flask 框架,相对来说起步简单一点儿。

2、环境准备

在开发之前,需要先安装 flask 的依赖,如下所示:

pip install flask 

案例中的项目使用的环境是 python3.8, 不同于 java, python 的环境会因为依赖产生各种各样的问题,为了保证环境的一致性,需要保证依赖的版本一致。那么如何保证环境和版本的一致呢?

# 通常采用 pip freeze 生成当前环境的所有依赖
pip freeze > requirements.txt
# 采用 pip install 来安装文件中的所有依赖
pip install -r requirements.txt
# 如果只安装本项目的依赖,则需要安装 pip install pipreqs
# 通过以下命令来生成项目依赖的版本
pipreqs . --encoding=utf8 --force

3、项目结构

对于web项目开发,也可以根据 mvc 的原则来划分项目,如下图所示:

1716821008493.png

  • model 模块用来存放数据库表对应的实体
  • script 模块用来存放数据库脚本和sh 脚本
  • static 是项目的静态文件,这里使用的是前端后端不分离的模式,所以有静态模块和html末班
  • templates html 模版文件
  • web 即存放控制器的模块
  • business 存放业务模块
  • app 项目启动的入口
  • utils 即项目木启动所需要的工具类

对于 web 项目的创建,可以使用 pycharm 中的新建项目模块完成项目的创建和基础配置,也可以手工创建文件的方式来创建项目。

1716824388507.png

4、项目app

flask 的入口文件为 app.py, 基础的配置以及依赖都在其中设置。这里通常配置 web 的访问和数据库的配置信息,还有项目的启动设置。

4.1 蓝图 Blueprint

通常情况下页面访问配置为 @app.route 即可访问,但是需要将页面路由的配置设置在 app.py 中,如果业务复杂或者路由过多的情况,就不太合适。通常在开发中可以使用蓝图来处理这类问题。

# 引入蓝图
from flask import Blueprint
# 注册蓝图,设置蓝图的名称,以及路径,url_prefix即访问前缀, 类似与spring controller 类上标注的 requestmapping。Login 为蓝图的名称,要唯一。
login_blue_print = Blueprint('Login', __name__, url_prefix="/login")

# 在使用蓝图时,需要使用的注解为 @login_blue_print.route 而非 app.route

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值