一.app、蓝图、视图函数框架
-================================================================================-
二.把视图函数从入口启动文件中分离出来
1.在fisher文件下新建文件夹app、web、book.py,写入以下代码:(web文件夹代表的是蓝图)
web = Blueprint(): 需要从flask里导入Blueprint;
之前的@app.route()改成@web.route();
2.之前的fisher.py下简化如下:
create_app():引用至app文件加下的__init__.py,代码如下
创建__init__.py:在python里使一个文件夹变成一个包,同时兼负包里一些初始化代码工作;
register_blueprint(app):用来注册蓝图app.register_blueprint(web)
-================================================================================-
三.使用蓝图来拆分视图函数,在web文件夹下的__init__.py写入以下代码:
book.py下代码修改如下
from . import web:导入web文件夹下的__init__.py;
之后每创建一个视图函数都在__init__.py下导入from app.web import xxx 就实现拆分视图函数了;
-================================================================================-
四.视图函数传参优化
使用request.args获得查询参数,dict它是不可变字典;
request.args.to_dict变成可变字典;
request.args后可以使用?q=x&page=x;