2017-04-01 33 views
0

我有這個選擇在我的形式:設置選項軌符號

<%= select_tag :x, options_from_collection_for_select(@dmj, :id, :name, :selected), {class: "form-control"} %> 

但是當我加載頁面,其值設置在DB未選擇的選項。

符號:selected來自控制器中的SQL查詢,如果我嘗試更換:name:selectedoptions_from_collection_for_select,我可以看到,它的價值是正確的。

此外,如果手動設置options_from_collection_for_select中的整數,則會選擇相應的選項。

爲什麼我沒有成功選擇符號選項?

編輯:

我的查詢做了一個連接以檢索連接表的選擇。下面是查詢: @dmj = DiscoveryModeInjury.find_by_sql(「選擇D.name,D.id,L.discovery_mode_injury_id AS選擇
FROM
discovery_mode_injuriesð
LEFT OUTER JOIN
link_dismodeinj_hospitalizations大號
ON
D. ID = L.discovery_mode_injury_id
WHERE
標誌= '光盤'
ORDER BY
D.name「)

如果我正確理解了Akash Srivastava的建議,查詢應返回DiscoveryModeInjury id字段?怎麼樣..?謝謝。

回答

0

確保您對:selected的查詢返回:id字段。基本上,options_from_collection_for_select()中的selected選項應該與value字段的字段相同,即:id。我們中的許多人在保留selected作爲collection的對象的結果時犯了這個錯誤。