Ruby on rails 在rails I18n中转换选择选项

Ruby on rails 在rails I18n中转换选择选项,ruby-on-rails,ruby,Ruby On Rails,Ruby,如何在rails I18n中翻译以下代码 f.select :option,[["This is a Scam","Scam"],["This is a Spam","Spam"],["This is a bot","Bot"]] 试试这个: config/locales/es.yml es: helpers: model: select_attr: values: scam: 'estafa' spam: 'co

如何在rails I18n中翻译以下代码

f.select :option,[["This is a Scam","Scam"],["This is a Spam","Spam"],["This is a bot","Bot"]]
试试这个:

config/locales/es.yml

es:
  helpers:
    model:
      select_attr:
        values:
          scam: 'estafa'
          spam: 'correo no deseado'
          bot: 'larva del moscardón'
en:
  helpers:
    model:
      select_attr:
        values:
          scam: 'Scam'
          spam: 'Spam'
          bot: 'Bot'
config/locales/en.yml

es:
  helpers:
    model:
      select_attr:
        values:
          scam: 'estafa'
          spam: 'correo no deseado'
          bot: 'larva del moscardón'
en:
  helpers:
    model:
      select_attr:
        values:
          scam: 'Scam'
          spam: 'Spam'
          bot: 'Bot'
并将您的
选择帮助程序
修改为

= f.select :option, [
                     [I18n.t("helpers.model.select_attr.values.scam", 'Scam')], 
                     [I18n.t("helpers.model.select_attr.values.spam", 'Spam')], 
                     [I18n.t("helpers.model.select_attr.values.bot", 'Bot')]
                    ]
Rails根据您选择的语言环境(
en
es
)设置选项值,如上例所示

选项内部数组的第一个属性是一个
标签
,它将显示给用户。第二个-是一个选项
,它将保存到数据库字段
选项


更多信息请参见文档页面。

谢谢。我真的不明白这里发生了什么,所以我如何向列表中添加另一项,即
values.scum,“Scam”
thanks@foliwe83您选择的选项是什么?它是常数模型还是相关模型?你能把你的型号代码贴在这里吗?我的第一个答案有一个打字错误,不,我会改正的。我的模型是硬编码的。这不是一个动态列表,这与so
=f完全相同。选择:选项,[[“这是一个骗局”,“骗局”,“这是一个垃圾邮件”,“垃圾邮件”,“这是一个机器人”,“机器人”]
@foliwe83我已经更新了我的答案。我不太理解你的问题,如果答案不能解决问题,请在你的问题中添加更多细节。谢谢,@cnnr代码有效。那么我如何才能将所有的?
spam、scam、bot
数组添加到列表中,因为这
[I18n.t(“helpers.model.select_attr.values.scam”,“scam”)
只显示scam的值,但我想拥有所有这三个选项。希望您理解