Python 重用粘贴配置项
我有以下Pyramid.ini文件:Python 重用粘贴配置项,python,pyramid,Python,Pyramid,我有以下Pyramid.ini文件: [DEFAULT] redis.host = localhost redis.port = 6379 redis.db = 0 [app:main] ... # beaker session session.type = redis session.url = localhost:6379 在app:main部分的session.url中,我想使用DEFAULT部分的redis.host和redis.port中定义的内容 据我所知,DEFAULT部分下
[DEFAULT]
redis.host = localhost
redis.port = 6379
redis.db = 0
[app:main]
...
# beaker session
session.type = redis
session.url = localhost:6379
在app:main
部分的session.url
中,我想使用DEFAULT
部分的redis.host
和redis.port
中定义的内容
据我所知,DEFAULT
部分下的所有内容都是全局的,并传递给其他部分。但是如果我想重用DEFAULT
中的设置,并在其他部分下为其指定一个不同的名称,我该怎么做
我使用的方法与使用${:}
session.url=%(redis.host)s:%(redis.port)s来引用buildout.cfg文件中的节条目的方法相同
应该可以了。session.url=%(redis.host)s:%(redis.port)s
应该这样做。是否有语法可以对不在[DEFAULT]节中的变量执行相同的操作?除了您的节和默认值之间,或者您的节和继承的节之间,没有其他横节引用。这都在PasteDeploy文档(金字塔用来解析INI文件的库)中。不过我注意到,即使我在
DEFAULT
部分下有redis.host
,该部分应该由app:main
继承,redis.host
设置和其他redis设置不存在于main(全局配置,**设置)下的金字塔设置中
因此我在DEFAULT
下使用了不同的名称,并在app:main
下使用了实际的redis.
设置。它们不会出现在settings
中,除非它们实际上是在应用程序的部分中设置的。不过,它们可以在global_conf
中找到。INI中“可用于继承”的内容与解析输出中显示的内容之间存在差异。顺便说一句,我不是说这有道理。只是说说PasteDeploy是如何工作的对于不在[DEFAULT]节中的变量,是否有相同的语法?除了您的节和DEFAULT之间,或者您的节和继承的节之间,没有任何跨节引用。这都在PasteDeploy文档(金字塔用来解析INI文件的库)中。不过我注意到,即使我在DEFAULT
部分下有redis.host
,该部分应该由app:main
继承,redis.host
设置和其他redis设置不存在于main(全局配置,**设置)下的金字塔设置中
因此我在DEFAULT
下使用了不同的名称,并在app:main
下使用了实际的redis.
设置。它们不会出现在settings
中,除非它们实际上是在应用程序的部分中设置的。不过,它们可以在global_conf
中找到。INI中“可用于继承”的内容与解析输出中显示的内容之间存在差异。顺便说一句,我不是说这有道理。只是说说PasteDeploy是如何工作的