2015-11-05 95 views
1

我爲我的下拉列表:如何在Rails中設置selected_key grouped_options_for_select?

<%= select_tag 'daily_order[kitchen_id]', grouped_options_for_select(Kitchen.for_normal_and_atworld_kitchens_select, selected_key = :id, options = {}), class: "form-control", onchange: "kitchen_change()" %>

selected_key當我通過了:id不工作。

當我硬編碼它是這樣的:

<%= select_tag 'daily_order[kitchen_id]', grouped_options_for_select(Kitchen.for_normal_and_atworld_kitchens_select, selected_key = 5, options = {}), class: "form-control", onchange: "kitchen_change()" %>

它的正常工作。

我的廚房模型:

def self.for_normal_and_atworld_kitchens_select 
    { 
     'Normal Kitchens' => where(special_kitchen: false, atworld: false).where.not(id: @exclude_kitchens).map {|x| [x.name, x.id]}, 
     'Around The World Kitchens' => where(special_kitchen: false, atworld: true).where.not(id: @exclude_kitchens).map {|x| [x.name, x.id]} 
    } 
    end 

我現在應該做的,使這個grouped_options_for_select SELECTED_KEY工作?

@exclude_kitchens是廚房ID的像陣列[1,2,3]。它會返回正確的輸出並在項目內的其他地方正常工作。

回答

0

:id代表什麼意思?您必須傳遞一個或多個要選擇的值。看看doc

您需要以某種方式動態獲取ID的副本,例如, @exclude_kitchens.first或任何有意義的。

相關問題