2014-04-09 48 views
5

對於〔實施例,編輯配置/區域設置/ en.yml如何編寫i18n字符串for Rails 4.1枚舉?

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值?

回答

1

我沒有發現任何具體的模式要麼,所以我乾脆說:

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

到任意.yml文件。然後在我看來:

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

cf. https://stackoverflow.com/a/23104850/797639

2

嘗試enum_help寶石。從它的描述:

幫助ActiveRecord ::枚舉功能正常工作與I18n和simple_form。