在Pyramid项目中存储全局配置变量

时间:2012-03-06 23:29:28

标签: python pyramid

我刚刚开始使用Python的金字塔框架,并且不确定在何处设置应用程序变量以及将它们导入到项目中的最佳方法。例如:数据库用户名/密码,路径,缩略图高度/宽度等......

我应该创建一个专用的config.py文件并将变量导入我的函数吗?这应该是什么样的?

感谢。

1 个答案:

答案 0 :(得分:13)

在cookbook中有一个配方用于模拟Django风格的全局设置文件(为了您的方便)。但是,建议的方法是将这些内容作为部署设置存储在INI文件中。因此,您可以拥有一个用于开发的数据库用户名/密码,一个用于生产,它就像拥有两个INI文件一样简单。您在Pyramid应用的[app:...] INI部分添加的所有键/值对都可以在设置时和请求处理期间通过附加到settings的{​​{1}}字典获得。这可以通过registry以及config.registry.settings访问。 request.registry.settings对象是您传递到settings函数中dict的{​​{1}}的副本。

有关详细信息,请参阅http://docs.pylonsproject.org/projects/pyramid/en/1.3-branch/narr/startup.html以及Pyramid文档中包含所有这些示例的教程。