我理解write browser view in a product更好,但想知道以下任务是否有任何快速解决方案。
我有一个带有cities
字段的自定义敏捷类型:
cities = schema.List(
title=_(u"Cities"),
value_type=schema.Choice(
vocabulary='cities',
required=False,
),
)
vocabularyies.py 中的值如下所示:
SimpleTerm(value="NewYorkCity", title=_(u"New York City")),
现在我想使用基于皮肤的模板 folder_listing.pt 并添加以下内容以显示cities
值。
<tal:cities condition="item_obj/cities"
tal:repeat="city item_obj/cities">
<span tal:replace="city">Value</span>
<span class="separator" tal:condition="not:repeat/city/end">,</span>
</tal:cities>
它将结果显示为NewYorkCity,但我真正想要的是它的中文翻译标题,如纽约市。如果可行,我如何通过模板定制满足这一需求?
答案 0 :(得分:1)
我认为你只需要使用i18n:domain和i18n:translate:
<span i18n:domain="yourdomain" i18n:translate="" tal:replace="city">Value</span>
(见http://wiki.zope.org/zope3/ZPTInternationalizationSupport)