Ruby on rails 在rails I18n中转换选择选项
如何在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
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的值,但我想拥有所有这三个选项。希望您理解