最近接触了一些flask的开发,这里做一个简单的结构模板。
目录结构
Project name/ # 项目名
├── deploy # docker/k8s 等配置配置文件
├── data # 数据存放
├── Project name # 应用名
│ ├── __init__.py # 初始化程序,用来注册蓝图
│ ├── config.py # 配置信息
│ ├── handlers # 接口代码
│ └── utils # 逻辑代码
├── test # 测试文件
├── .gitignore # git 信息
├── requirements.txt # 相关依赖
├── README.md # 项目文档
└── manage.py # 启动程序
示例
这里做一个简单的示例,实现一个简单的接口功能。后续会增加接口的功能。
定义接口
在handlers里新建img_api.py
from flask import Blueprint
img_tansfrom = Blueprint('img_transform',__name__)
@img_tansfrom.route('/img/index',methods=['GET'])
def index():
return 'Index'
这里看到定义了一个简单的index的接口,访问成功会返回index。
注册
在handlers里创建_init_.py,注册蓝图
from img_transform.handlers.img_api import img_tansfrom
def init_app(app):
app.register_blueprint(img_tansfrom)
在project目录下 创建_init_.py,创建app
from flask import Flask
from img_transform import handlers
def create_app():
app = Flask(__name__)
register_extensions(app)
return app
def register_extensions(app):
handlers.init_app(app)
运行
修改manange.py
from img_transform import create_app
app = create_app()
if __name__ =='__main__':
app.run()
在命令行里运行
python manage.py
启动服务,访问接口可以查看接口结果。
网友评论