Python Flask Blueprint 蓝图
本篇来了解一下 Flask 中 Blueprint 蓝图,什么蓝图 。。就是一个分模块的扩展而已,用来让不同的 业务模块api 分到不同的python文件中 而已,和 Spring mvc 的 class 级别 的@RequestMapping("/") 差不多。。

前因:
为什么要引入 Blueprint 蓝图呢? 因为如果默认把API接口都写到 一个py 文件里面 那么这个文件会越来越复杂,会越来越臃肿 导致 无法维护 ,所以按照正常的开发逻辑 也需要进行模块的划分 ,那么就需要引入 Blueprint
1.安装 Blueprint
需要先在环境中 使用 pip 安装一下 Blueprint 扩展2.编写Flask 入口 py文件
- from flask import Flask
- app = Flask(__name__)
- @app.route('/')
- def helloworld():
- return 'Hello world python flask'
-
- # 新版本应该是 不支持这样启动了
- # if __name__ == '__main__':
- # app.run()
复制代码 3.编写User模块 user.py文件
根据业务 可以创建新的模块 然后通过Blueprint 去注册路由- from flask import Blueprint
- user = Blueprint('user',__name__)
- @user.route('/user/username')
- def username():
- return 'get username : johnny'
-
复制代码 4.Blueprint注册到 Flask app上
在入口文件中 把刚刚创建的 Blueprint 注册上去- from flask import Flask
- #引入 刚刚创建的 blueprint
- from user import user
- app = Flask(__name__)
- #注册到 flask app上
- app.register_blueprint(user)
- @app.route('/')
- def helloworld():
- return 'Hello world python flask'
- # if __name__ == '__main__':
- # app.run()
复制代码 5.验证
访问:/user/username 得到如下:

访问: / 得到如下:

总结:
使用 Blueprint很简单 按照下面的流程
- pip install Blueprint
- 创建 新模块文件,在其中创建Blueprint对象 如:
- # Blueprint两个参数('蓝图名字',蓝图所在位置')
- user = Blueprint('user',__name__)
复制代码 - Blueprint注册到 Flask app上
- #引入 刚刚创建的 blueprint
- from user import user
- app = Flask(__name__)
- app.register_blueprint(user)
复制代码 可以把Blueprint 理解为 Spring mvc 的 Class 级别 的@RequestMapping("/user") 差不多。。
欢迎大家访问 个人博客 Johnny小屋
欢迎关注个人公众号

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |