【问题标题】:How to write i18n String for Rails 4.1 Enums?如何为 Rails 4.1 枚举编写 i18n 字符串?
【发布时间】:2014-05-22 18:48:05
【问题描述】:

例如,编辑 config/locales/en.yml

en:
  activerecord:
    models:
      user: User
    attributes:
      user:
        name: Name

你可以得到

User.model_name.human # => User

User.human_attribute_name('name') # => Name

但是如何编写 Rails 4.1 Enums I18n 值?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 ruby-on-rails-4.1


    【解决方案1】:

    试试enum_help gem。从它的描述来看:

    帮助 ActiveRecord::Enum 功能与 I18n 和 simple_form 一起正常工作。

    【讨论】:

      【解决方案2】:

      我也没有找到任何特定的模式,所以我简单地添加了:

      en:
        user_status:
          active:   Active
          pending:  Pending...
          archived: Archived
      

      到任意 .yml 文件。那么在我看来:

      I18n.t :"user_status.#{user.status}"
      

      参见。 https://stackoverflow.com/a/23104850/797639

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-23
        • 2017-08-24
        • 2015-12-19
        • 2013-11-02
        相关资源
        最近更新 更多