在我的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} )%>
但是,上面的选中选项没有显示上述值。在控制台中,值正在正常运行。现在,第一项显示在选择框中。
如何将所选选项中的值作为默认值?
答案 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) %>