0

我有这样的事情:[% query | html %]

现在我想用它作为

[% MACRO l(text, args) BLOCK; c.localize(text, args); END; %] 
[% l('text:<b>[_1]</b> no:[_2]', [query | html,2]) %]

如果您尝试该示例,它将无法正常工作,因为|不能在那里使用。Template Toolkit 不接受这点。我想 HTML-escape query。我怎样才能做到这一点?

移出<b>引号不是解决方案,因为翻译的顺序可能与上述不同。

4

1 回答 1

2

您可以转义[% USE HTML %]特定参数,例如:

[% USE HTML %]
[%# your code above %]
[% l('text:<b>[_1]</b> no:[_2]',  HTML.escape(query), 2) %]
于 2011-01-31T12:10:55.770 回答