是否可以定义字典类型的buildout变量?
我试图用字典替换变量,但buildout认为它是一个字符串。
E.g。
buildout.cfg中的:
[MYPROG]
progr_args =
a : 1
b : 2
d :
d1: 1
d2: 2
模板中的:
my_params:
{% for key, val in parts.MYPROG.progr_args.items() %}\
${key}: ${val}\
{% end %}
答案 0 :(得分:2)
不是Buildout本身,不是。构建配置值始终是字符串;即使是mr.scripty
recipe,它允许您使用Python代码作为构建配置的一部分,也可以将Python代码的结果存储为字符串。
更糟糕的是,连续行的初始空格被剥离,所以你的条目是:
progr_args =
a : 1
b : 2
d :
d1: 1
d2: 2
存储为\na : 1\nb : 2\nd :\nd1: 1\nd2: 2
,丢失了所有缩进上下文。
你必须使用Genshi本身来解析你的价值观。我建议你使用一个单独的部分:
[MYPROG]
prog_params = section_name
[section_name]
a = 1
b = 2
并在您的模板中:
my_params:
{% for key, val in parts[parts.MYPROG.progr_args].items() %}\
${key}: ${val}\
{% end %}