在Mako模板中使用词典

Ada*_*ter 7 python mako

而不是像这样将变量传递给模板:

template.render(var1='hello', var2='world')
Run Code Online (Sandbox Code Playgroud)

如何将字典传递给模板并以相同的方式呈现

vars = {'var1': 'hello', 'var2': 'world'}
Run Code Online (Sandbox Code Playgroud)

所以在模板中我可以正常显示变量:

${var1} ${var2}
Run Code Online (Sandbox Code Playgroud)

我不希望模板中有任何额外的代码,所以我想以某种方式使用Context对象,但我已经碰到了一堵砖墙.有任何想法吗?

Jac*_*cob 10

我不知道mako,但是要使用dict作为关键字参数(或kwargs),你必须先加两个*:

template.render(**vars)
Run Code Online (Sandbox Code Playgroud)