Rails 3,国际化(I18n)-将数字转换为值



我有一个带有级别列的用户表。级别列为数字,值为0、1或2。

有没有办法让国际化(I18n)API转换数值,以便在英语中0=Foobar,1=Foo,2=Bar?那么在另一种语言中,0,1,2可以返回其他内容吗?

感谢

我发现你可以通过在你的区域设置文件中添加以下内容来做到这一点:

en:
  user:
    level:
      '0': 'Admin'
      '1': 'Editor'
      '2': 'Contributer'

然后在视图中:

<%= f.select :level, (0..2).to_a.map { |level| [t(level, :scope => 'user.level'), level] } %>

也许有更好的方法,但这似乎对我很有效!

相关内容

  • 没有找到相关文章

最新更新