rails 4选择所选选项不起作用

时间:2016-03-02 05:25:17

标签: ruby-on-rails select ruby-on-rails-4.2

在我的rails 4表单中,我有一个字段来选择值。

<%= f.select(:owner_user_id, Item.find(session[:login_users_item_id]).try(:users).order_by_fullname.collect {|u| [ u.full_name, u.id ] } , {:selected =>  current_user.full_name} )%>

但是,上面的选中选项没有显示上述值。在控制台中,值正在正常运行。现在,第一项显示在选择框中。

如何将所选选项中的值作为默认值?

3 个答案:

答案 0 :(得分:1)

f.select方法的第三个参数是选定的值,您可以在其中传递您希望看到的值。在您的情况下:current_user.full_name

<%= f.select(:owner_user_id, Item.find(session[:login_users_item_id]).try(:users).order_by_fullname.collect {|u| [ u.full_name, u.id ] }, current_user.full_name)%>

答案 1 :(得分:1)

<%= f.select(:owner_user_id, Item.find(session[:login_users_item_id]).try(:users).order_by_fullname.collect {|u| [ u.full_name, u.id ] }, selected: f.object.owner_user_id)%>

试试这个

答案 2 :(得分:0)

您也可以使用options_for_select帮助器。

示例:

<%= f.select :owner_user_id, options_for_select(Item.find(session[:login_users_item_id]).try(:users).order_by_fullname.pluck([ :full_name, :id ]), f.object.owner_user_id) %>