Mako表达式中的字典文字

时间:2011-01-06 20:37:34

标签: mako

以下引发语法错误,“解析时意外的EOF”:

${foo({'bar':'baz'})}

我猜是来自内部的大括号。 这很好用:

${foo(dict(bar='baz'))}

但是使用字典文字的语法是什么?

1 个答案:

答案 0 :(得分:6)

来自Mako Templates Google Group的Brian Rue:

这是一个长期存在的漏洞;只需使用dict()。如果你需要一本字典 使用不是字符串的键,将元组列表转换为字典。 例如而不是这个:

${foo({1: 'a', 2: 'b'})}

这样做:

${foo(dict([(1, 'a'), (2, 'b')]))}