我正在使用Rails i18n-active_record gem,当我从web界面保存翻译时,Ralis插入普通字符串并将--- value \n\n
插入翻译值列和--- []\n
,所以如果我通过{查找翻译{1}}模型我得到Translation
,但如果--- value \n\n
我得到实际的I18n.t('key')
,那么为什么会发生这种情况?
答案 0 :(得分:1)
此格式为YAML - 默认"编码器"用于序列化属性。事实证明,当我使用i18n-active_record gem(序列化值和插值列)时,我还创建了自己的Translation
模型,它没有&#t; t
serialize :value
serialize :interpolations, Array
所以问题在于,当我保存一些翻译时,它们被i18n-active_record gem here序列化,但当我检索它们时,他们不会。所以解决方案是将上面的序列化调用添加到我的翻译模型以从I18n::Backend::ActiveRecord::Translation
继承我的翻译模型。
This article帮助我理解格式是序列化。