将翻译存储在数据库中?

时间:2011-12-15 19:08:24

标签: ruby-on-rails translation locale

我有一些产品类别。

由于这些类别可以更改或增长,我认为我会将它们存储在数据库中,以便通过管理界面进行管理。

但是,这些类别必须翻译成另一种语言。 (en / fr /也许其他......)

通过这种方式,我想知道你对此的想法:

  • 最好在Category模型中设置这些类别(在数组中)并通过yml文件进行翻译
  • 我是否必须使用区域设置列设置类别数据库,例如:

    id(类别ID)| en(英文翻译)| fr(法语翻译)|等...

  • 或者有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

请参阅http://guides.rubyonrails.org/i18n.html

我的建议是,如果您要翻译属于模型的内容(例如属性名称),并且您将控制是否/何时更改,请使用每个区域设置的YAML文件。

对于动态内容,请使用数据库。

如第{6.1节“{3}}中的”不同后端“所示,您可以混合使用两种策略:在数据库中查找翻译,如果找不到,则返回YAML文件。