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')