1
在理解Mako(Python的模板引擎)的过程中,我开始玩defs结构。Mako:def组合(在渲染时)没有正确评估
我试图做的一件事是在def调用中生成一个“if”语句(比如说一个JavaScript)。这里的文字:
<%def name="if_statement(x)">if (${x})</%def>
<%def name="sample_condition()">3 == 3</%def>
${if_statement(sample_condition())}
输出不是预期的if(3 == 3)
,但3 == 3if()
,就像DEF的其他任何内容之前if_statement
的说法进行了评估,并在前面渲染。
这是预期的行为?如果是,为什么? 另外,我怎么能达到我想要做的?