Python Flask Blueprint 蓝图

打印 上一主题 下一主题

主题 873|帖子 873|积分 2619

Python Flask Blueprint 蓝图

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

前因:

为什么要引入 Blueprint 蓝图呢? 因为如果默认把API接口都写到 一个py 文件里面 那么这个文件会越来越复杂,会越来越臃肿 导致 无法维护 ,所以按照正常的开发逻辑 也需要进行模块的划分 ,那么就需要引入 Blueprint
1.安装 Blueprint

需要先在环境中 使用 pip 安装一下 Blueprint 扩展
  1. pip install Blueprint
复制代码
2.编写Flask 入口 py文件
  1. from flask import Flask
  2. app = Flask(__name__)
  3. @app.route('/')
  4. def helloworld():
  5.     return 'Hello world python flask'
  6.   
  7. # 新版本应该是 不支持这样启动了
  8. # if __name__ == '__main__':
  9. #     app.run()
复制代码
3.编写User模块 user.py文件

根据业务 可以创建新的模块 然后通过Blueprint 去注册路由
  1. from flask import Blueprint
  2. user = Blueprint('user',__name__)
  3. @user.route('/user/username')
  4. def username():
  5.     return 'get username : johnny'
  6.    
复制代码
4.Blueprint注册到 Flask app上

在入口文件中 把刚刚创建的 Blueprint 注册上去
  1. from flask import Flask
  2. #引入 刚刚创建的 blueprint
  3. from user import user
  4. app = Flask(__name__)
  5. #注册到 flask app上
  6. app.register_blueprint(user)
  7. @app.route('/')
  8. def helloworld():
  9.     return 'Hello world python flask'
  10. # if __name__ == '__main__':
  11. #     app.run()
复制代码
5.验证

访问:/user/username 得到如下:

访问: / 得到如下:

总结:

使用 Blueprint很简单 按照下面的流程

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


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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

瑞星

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表