运行时通过cookie重写烧瓶配置。

Flask-Config-Override的Python项目详细描述


烧瓶配置覆盖

[![生成状态](https://travis-ci.org/elboby/flask-config-override.png?branch=master)](https://travis-ci.org/elboby/flask-config-override

此扩展允许在运行时更改烧瓶应用程序的配置。此行为由cookie控制,因此包含在唯一用户的会话中;配置更改不会影响其他用户。

一个常见的用法是在登台环境中快速更改选项,而不必重新部署配置更改。例如,我们将其用于外部api位置或功能切换,比如是否使用小型javascript文件。

可以重写的配置选项也有限且可配置(使用config_override_extensable_vars)。出于安全原因,无法重写此选项。

其思想是用代理对象替换烧瓶应用程序的配置对象,代理对象的行为可以根据请求进行控制/更改,同时公开与烧瓶配置相同的接口。扩展还提供了一个蓝图(默认的基url to/config_override/)来通过一些简单的http调用控制cookie;这会自动附加到应用程序。

安装

通过PYPI:

pip install flask-config-override

用法

安装后,首先将延长件连接到烧瓶应用程序:

from flask import Flask from flask.ext.config_override import ConfigOverride

app = Flask(__name__) app.config[‘FOO’] = ‘bar’

# Enable the override for the DEBUG option (default to false) app.config[‘CONFIG_OVERRIDE_EXTENDABLE_VARS’] = [‘FOO’] config_override = ConfigOverride(app)

# configure your routes and what not…

启动应用程序,然后打开浏览器并转到此URL将foo选项设置为另一个值;此处为“to to”:

http://localhost:5000/config_override/update/FOO/toto/

您的会话现在将在设置foo为新值的情况下运行。您可以在请求上下文中从app.config['foo']正常访问它。

要查看当前更改,您可以访问以下URL:

http://localhost:5000/config_override/

要删除更改,您只需清除cookie或转到那里:

http://localhost:5000/config_override/reset/

测试

  • 首先安装nose以进行测试发现:pip install nose
  • 然后在虚拟环境中运行测试:noests

联系人

随时发布问题,在github中请求,或者直接在twitter@el_boby上联系我。

立即待办事项

  • 测试cookie实用程序
  • 代理配置测试(基于烧瓶1)
  • 文档API(Sphinx)

待办事项

  • 由环境变量重写。
  • 烧瓶调试工具栏集成。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java嵌套循环打印一个数字,旁边有相同数量的星号   java JodReports替代方案   java如何将模型类parcelable对象从片段传递到活动?   java JCS缓存删除功能不删除特定元素   如何打开。Java的dll文件。   java在这种情况下如何选择聚合根?   java从CellEditorListener获取编辑的TreeNode   Java到web服务和mysql   从openssl ec在Java中创建公钥时出现加密无效密钥异常   Java数组:添加多个数组的元素时忽略空数组   java在初始化后向fragment发送数据   JButtons的java数组正在返回void   若联接列不包含特定值,则java JPA条件生成器仅返回实体   java ActionBar问题:NPE   java Portlet是被广泛使用还是非常罕见?