Flask—蓝图

版权声明:此博客出自HuQi,感谢您的转载 https://blog.csdn.net/JSYhq/article/details/88620211

一、Flask蓝图介绍

1. 蓝图定义

        随着业务代码的增加,将所有代码都放在单个程序文件中,是非常不合适的。这不仅会让代码阅读变得困难,而且会给后期维护带来麻烦。django中的app的主要作用就是将django的项目分成一个个单独的app,然后将所有的app分配不同的处理功能,通过路由分配将它们连接成一个大的django项目,其实Flask中的蓝图和django中的app功能大同小异,下面我们大概的了解一下Flask的蓝图。

        一个蓝图定义了可用于单个应用的视图、模板、静态文件等等的集合。可以把蓝图当做你的应用的管理面板。

2. 蓝图运行机制

        蓝图是保存了一组将来可以在应用对象上执行的操作。注册路由就是一种操作,当在程序实例上调用route装饰器注册路由时,这个操作将修改对象的url_map路由映射列表。当我们在蓝图对象上调用route装饰器注册路由时,它只是在内部的一个延迟操作记录列表defered_functions中添加了一个项。当执行应用对象的 register_blueprint() 方法时,应用对象从蓝图对象的 defered_functions 列表中取出每一项,即调用应用对象的 add_url_rule() 方法,这将会修改程序实例的路由映射列表。

二、蓝图的使用

1. 创建蓝图实例

# Blueprint必须指定两个参数,admin表示蓝图的名称,__name__表示蓝图所在模块
admin = Blueprint("admin", __name__)

2.  注册蓝图路由

@admin.route("/")
def admin_index():
    return "admin_index"

3.  在程序实例中注册该蓝图

app.register_blueprint(admin,url_prefix="/admin"})

博客参考:Flask-蓝图

猜你喜欢

转载自blog.csdn.net/JSYhq/article/details/88620211