【问题标题】:Rails 3, Internationalization (I18n) - Translate number to valueRails 3,国际化 (I18n) - 将数字转换为值
【发布时间】:2011-06-01 14:13:24
【问题描述】:

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

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

谢谢

【问题讨论】:

    标签: ruby-on-rails-3 internationalization


    【解决方案1】:

    我发现您可以通过在您的语言环境文件中添加以下内容来做到这一点:

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

    然后在一个视图中:

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

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

    【讨论】:

      猜你喜欢
      • 2012-02-25
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多