2012-10-08 63 views
2

如何在金字塔中使用時翻譯wtforms的表單標籤和錯誤消息。pyramid wtforms標籤和錯誤消息翻譯(for i18n)

樣品形式:

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文件中的字符串翻譯

我是我們在jinja2模板中,jinja2模板的翻譯字符串工作正常,但表單元素翻譯不起作用。任何想法在此,幫助將不勝感激。

回答

0

您的問題可能來自_在導入時調用,而不是在運行時調用,此時翻譯尚未配置。如果你使用pyramid.i18n.TranslationString,這應該不是問題,因爲它是懶惰的,只有在顯示時才被翻譯,但如果你使用其他的東西,那可能是你的問題。

那麼,你是怎麼定義_