Flask测试数据库应用程序上下文

时间:2015-12-25 17:09:53

标签: python flask flask-testing

如何构建我的瓶子项目,以便我的模型可以知道是否启用TESTING(从而使用测试数据库),而无需让他们处理或了解应用程序上下文。

我将此作为一个开源项目开发,所以来源可能会对此有所了解:https://github.com/nficano/jotonce.com/blob/master/jotonce/messages/models.py#L33

1 个答案:

答案 0 :(得分:0)

我认为您遇到了这个问题,因为您没有为用户提供在运行时指定配置的方法。相反,managers.py会抓取settings.py文件中指定的任何设置,而不会查询最终用户可能指定的设置。

由于您拥有factory.py,因此可以从Flask导入current_app(假设您的数据库函数在应用程序上下文中调用)并使用那里的设置值。如果这是你的选择,Flask对configuration handling提出了一些很好的建议。

如果您在应用程序上下文之外运行此操作,我不认为factory.py目前的结构对您有用。您需要手动处理自己的配置。

您可以查看https://github.com/Robpol86/Flask-Large-Application-Example/blob/master/pypi_portal/application.py,了解使用具有不同配置值的app工厂的大型烧瓶项目示例。

祝你好运,节日快乐!