Select_tag不会发送任何东西

时间:2016-03-28 08:01:08

标签: ruby-on-rails-4

我有以下代码 <%= form_tag('/update', method: :post) do %> <%= select_tag :role, UserSomething.roles.keys.map {|role| [role.titleize,role]} %>

角色是一个枚举文本值必须在下拉菜单中显示,并且在表单提交时,我必须将所选枚举的索引发送到某个控制器。我不知道如何设置select_tag属性。

1 个答案:

答案 0 :(得分:0)

我会使用帮助器options_for_select将您从UserSomething.roles.keys.map获得的数组映射到select的选项列表。我不认为select_tag方法处理框的数组,它需要一个选项标记列表。请参阅docs here

<%= form_tag('/update', method: :post) do %>
 <%= select_tag :role, options_for_select(UserSomething.roles.keys.map {|role|  [role.titleize,role]}) %>
<% end %>