ruby-on-rails – 简单的表单集合翻译

使用翻译示例 here,使用Ruby I18n翻译:male,:female选项,表单将是:

查看:_form.html.erb

<%= f.input :gender,collection: [:male,:female] %>

生成的HTML:

<option>Male</option>
<option>Female</option>

因此,在提交时,表单使用翻译的值.

如何更改视图代码以提交[“男性”,“女性”]值而不是[“男性”,“女性”]?

到目前为止我最好的拍摄非常难看:

<%= f.input :gender,:female].map{|v| [t("simple_form.options.user.gender.#{v.to_s}",v] %>

解决方法

在您看来,您应该使用

<%= f.input :gender,:female] %>

在你的yaml文件中,你应该有

simple_form:
  options:
    user: (or defaults:)
      gender:
        male: Male
        female: Female

这应该自动转换成

<option value="male">
  Male
</option>

这些值将返回到控制器,而不是翻译的单词.

如果没有,那就有问题……

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...