金字塔wtforms标签和错误消息翻译(对于i18n)

时间:2012-10-08 13:58:57

标签: python pyramid wtforms

在使用金字塔时,我们如何翻译wtforms的表单标签和错误消息。

样本表格:

class RegistrationForm(Form):
   name = TextField(_(u'Name'), [v.Required(_(u'Please provide your name'))])
   age = IntegerField(
    _(u'Age'),
    [v.NumberRange(min=12, message=_(u'Must be at least %(min)d years old.'))]
   )

在此之后我完成了:

  1. 消息字符串提取
  2. .po文件中字符串的翻译
  3. 编译为创建.mo文件
  4. 我正在使用jinja2模板,jinja2模板的翻译字符串工作正常,但表单元素翻译不起作用。任何想法,帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您的问题可能来自以下事实:在导入时调用_而非运行时,尚未配置转换。如果你使用pyramid.i18n.TranslationString,它应该不是问题,因为它是懒惰的,只有在显示时才会被翻译,但如果你正在使用别的东西,那可能就是你的问题。

那么,你是如何定义_的?