【发布时间】:2013-08-28 11:11:36
【问题描述】:
从概念上讲,这是一个非常简单的想法。具体而言,我正在使用一个非常通用的 Kotti 安装,我正在自定义一些页面/模板。
我的大部分配置在生产服务器和开发服务器之间共享。目前,这些设置包含在两个单独的 ini 文件中。 DRY 这种配置会很好,在一个地方使用通用设置。
我对在 python 或 ini 文件/节(或者可能是第三个尚未考虑的地方)中发生这种情况持开放态度。我认为这相当于使用 [DEFAULT] 部分,或通过global_conf 将字典传递给loadapp,但这似乎是以一种松鼠的方式处理的。例如,Kotti 认为我已经正确设置了 sqlalchemy.url,但是 sqlalchemy 本身在 url = opts.pop('url') 上失败了。此外,由于 Kotti 定义了一些默认设置,Paste 最终不会在 global_conf 中搜索它们(例如,kotti_configurators)。
我不喜欢为%(var)s 替换传递一个大字典的想法,因为它需要有效地重命名所有共享变量。
在我最初使用 Paste Deploy 的实验中,它要求每个 ini 文件中都有一个“主要”部分。所以,我认为我不能只使用use = config:shared.ini 行。但这在概念上与我想做的很接近。
有没有办法明确(并且正确地)包含来自 DEFAULT 或 global_conf 的设置?或者也许在 loadapp 的结果上使用 python 以编程方式执行此操作?
【问题讨论】:
-
所以,我认为我不能只使用 (...) 不要猜测 - 试试吧。
-
为了清楚起见,我确实尝试了很多东西。 “不要思考”适用于一般方法,我可能还没有完全理解。你的评论很烦人。
标签: python pyramid web-deployment paste