Plone:从灵巧xml模型中提取i18n字符串

时间:2014-09-03 12:42:39

标签: plone dexterity

我正在使用dexterity xml模型,我正在寻找一种从模型中提取i18n字符串的方法。它看起来不像i18ndude或infrae.i18nextract这样做。因此,我的xml模型中的所有翻译字符串都不会显示在生成的.pot文件中。

有些模型有30多个字段,因此手动提取变得乏味。

1 个答案:

答案 0 :(得分:3)

i18ndude 从模型文件中提取i18n消息,没有任何问题;检查您是否包含您的域并标记要提取的字符串。

请参阅我们的i18n script并查看比较collective.cover's model与您的比较:

<?xml version="1.0" ?>
<model xmlns="http://namespaces.plone.org/supermodel/schema"
       xmlns:form="http://namespaces.plone.org/supermodel/form"
       xmlns:i18n="http://xml.zope.org/namespaces/i18n"
       i18n:domain="collective.cover">
    <schema>
        <field name="template_layout" type="zope.schema.Choice"                   form:widget="collective.cover.widgets.selectpreview.SelectFieldWidget"
               form:omitted="z3c.form.interfaces.IEditForm:true">
            <description i18n:translate=""
              >Choose one of the predefined layouts</description>
            <title i18n:translate="">Layout</title>
            <vocabulary>collective.cover.AvailableLayouts</vocabulary>
            <default>Empty layout</default>
        </field>

        <field name="cover_layout" type="zope.schema.Text"
               form:omitted="z3c.form.interfaces.IForm:true
                             z3c.form.interfaces.IAddForm:true
                             z3c.form.interfaces.IEditForm:true">
            <description i18n:translate=""
              >The layout to be used to render groups and tiles</description>
            <title i18n:translate="">Cover Layout</title>
        </field>
    </schema>
</model>