我正在使用带有ZPT模板的金字塔来制作网络应用。我正在尝试创建一个表单模板宏库,以便更轻松地设置表单字段的当前值等等。我还使用语言消息提取器自动选取字符串进行本地化。我无法弄清楚如何使提取器使用宏标签上的属性。例如,假设我有一个看起来像这样的宏:
<tal:block metal:define-macro="text">
<input type="text" name="${field}" value="${request.params.get(field) or default_value}"/>
</tal:block>
我在这样的页面模板中使用它:
<tal:block tal:define="field 'fred'; default_value _('initial value')" metal:use-macro="form.macros['text']"/>
消息提取器不会获取文本“初始值”。有没有办法让这种情况发生?如果可能的话,我想将字符串保留在模板中,我知道我可以通过在视图中生成的默认值的所有字符串可调用来解决这个问题。也许有更好的方法将值传递给宏以便在属性中使用?
答案 0 :(得分:0)
您需要使用[lingua]到版本2(或更高版本)从模板中提取消息才能使用。