Google पर इस खोज के लिए बहुत सारे परिणाम हैं, और यह एसओ पर भी पूछा जाता है - लेकिन अब तक चर्चा किए गए समाधान मेरी मदद नहीं कर रहे हैं। यहां समस्या है: मेरे पास form_for @company |f|
है और मैं का उपयोग company_status_id
के लिए कर रहा हूं - लेकिन जब फॉर्म लोड होता है, तो मैं सेट होने पर वास्तविक कंपनी की स्थिति चुनना चाहता हूं। डीबगर के माध्यम से मुझे पता है कि यह सेट किया गया है, फिर भी मुझे वहां प्रदर्शित एक डिफ़ॉल्ट मान मिल रहा है।f.collection_select चयनित मान प्रदर्शित नहीं करना
= puts @company.company_status_id
= f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value}
यहाँ उत्पन्न htmnl
<select id="company_company_status_id" prompt="-Select-" name="company[company_status_id]">
<option value="1">-Not Available-</option>
<option value="2">Active</option>
<option value="3">Bankrupt</option>
<option value="4">Acquired</option>
</select>
है और स्थिति जस की तस बरकरार है, भले ही मैं करता हूँ: कोड यह
f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value, :selected => :selected => @company.company_status}
या
f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value, :selected => @company.company_status}
पुट बयान के माध्यम से, मैं company_status_id स्थापित किया जा रहा देखते हैं, लेकिन सही ढंग से काम नहीं कर रहा। मैं रेल 2.3.11 का उपयोग कर रहा हूँ। [यह] (http://stackoverflow.com/a/1065359/878451) उत्तर बिल्कुल बताता है कि मैं क्या चाहता हूं, और मैं भी क्या कर रहा हूं, लेकिन क्या काम नहीं करता है। –
यह काम करना चाहिए। @ company.company_status_id और ListCache.company_statuses दिखाएं – tokland
क्या आप अपनी फॉर्म परिभाषा पोस्ट कर सकते हैं क्योंकि यह निर्भर करता है कि f.object क्या है? –