Flask开发项目结构:
2.程序经常需要多个配置,一般分为开发,测试和生产环境,他们使用不同的数据库,不会彼此影响。
3.程序工厂函数
(1)为什么需要程序工厂函数?
在单个文件中开发程序很方便,但却有个很大的缺点,因为程序在全局作用域中创建,所以无法动态修改配置。运行脚本时,程序实例已经创建,再修改配置为时已晚。这一点对单元测试尤其重要,因为有时为了提 高测试覆盖度,必须在不同的配置环境中运行程序。
这个问题的解决方法是延迟创建程序实例,把创建过程移到可显式调用的工厂函数中。这种方法不仅可以 给脚本留出配置程序的时间,还能够创建多个程序实例。
(2).如何使用程序工厂函数
创建扩展类时不向构造函数传入参数, 在之前创建的扩展对象上调用 init_app() 可以完成初始化过 程。
不适用程序工厂函数
app = Flask(name)
bootstrap = Bootstrap(app)
mail = Mail(app)
使用程序工厂函数
bootstrap = Bootstrap()
mail = Mail()
def create_app():
app = Flask(__name__)
bootstrap.init_app(app)
mail.init_app(app)
return app
4.蓝图:组件化开发
(1).什么是蓝图?
Flask蓝图提供了模块化管理程序路由的功能,使程序