Flask使用Blueprint让应用实现模块化,在Flask中,Blueprint具有如下属性:
一个项目可以具有多个Blueprint
可以将一个Blueprint注册到任何一个未使用的URL下比如 “/”、“/sample”或者子域名
在一个应用中,一个模块可以注册多次
Blueprint可以单独具有自己的模板、静态文件或者其它的通用操作方法,它并不是必须要实现应用的视图和函数的
在一个应用初始化时,就应该要注册需要使用的Blueprint
为了减少代码耦合度在编写项目的时候我们使用到了蓝图
使用蓝图:
1、分模块建立文件(命名按照项目要求)
2、创建一个蓝图的包,例如index,并在__init__.py
文件中创建蓝图对象
users=Blueprint('users',__name__)
3、在这个蓝图目录下, 创建views.py文件,保存当前蓝图使用的视图函数
@admin.route('/') def home(): return 'index.home'
4、在index/init.py中引入views.py中所有的视图函数
from flask import Blueprint # 等同于原来在 manage.py里面的 app = Flask() users=Blueprint('index',__name__) from .views import *
5、在主应用main.py文件中的app对象上注册这个users蓝图对象
from users import users #蓝图的其他操作(url前缀):'/users/index'(打印效果) app.register_blueprint(users,url_prefix='/users')