Flask 组件 App、Blueprint、RESTful 配合使用

前几篇文章简单的介绍了 Flask 各个组件 App、Blueprint、RESTful,以及各个组件的使用方法,现在第一道坎是如何将这些组件组合在一起使用

PS:App 就是最原始的 Flask 的应用,我统一将这个应用叫做 App,这是为了方便以后集成而人为定义的规范

首先,我们按照最原始创建 App 的方法创建应用

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

from flask import Flask, Blueprint
from flask_restplus import Resource, Api


# 创建 app
app = Flask(__name__)

然后,创建蓝图

# 创建蓝图
blueprint = Blueprint('api', __name__)

再然后创建 api

# 创建 api
api = Api(blueprint)


# 视图类
class DemoView(Resource):

    def get(self):
        return {'message': 'get'}

    def post(self):
        return {'message': 'post'}

最后,注册蓝图

# 注册蓝图
app.register_blueprint(blueprint)

注册路由

# 注册路由
api.add_resource(DemoView, '/')

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

根据之前的介绍,Blueprint 并不是一个完整的应用,它不能独立于应用运行,而必须要注册到某一个应用中。在之前的例子中是注册到 app 中,在这里是注册到 api 中

注册的顺序是先将蓝图绑定到 api 中,这时 api 既有自身的功能,还有蓝图的功能,这是创建 api,蓝图还需要注册到 app 中,最后使用 api 进行路由注册

注册蓝图和路由的顺序不能反,因为蓝图绑定到 api 中了

参考文章:https://blog.csdn.net/yunlibiqing/article/details/102458045?utm_source=app

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章