Ci sono così tanti risultati per questa ricerca su google, ed è anche richiesto a SO - ma le soluzioni discusse finora non mi stanno aiutando. Ecco il problema: ho un form_for @company |f|
e sto usando f.collection_select
per company_status_id
- ma quando il modulo viene caricato, voglio lo stato attuale della società selezionato se è impostato. Tramite il debugger so che è stato impostato, eppure sto visualizzando un valore predefinito lì. Ecco il codice:f.collection_select non visualizza il valore selezionato
= puts @company.company_status_id
= f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value}
Ecco il htmnl generato
<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>
E le condizioni rimangono le stesse, anche se faccio:
f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value, :selected => :selected => @company.company_status}
O
f.collection_select :company_status_id, ListCache.company_statuses, :id, :name, {:prompt => @select_value, :selected => @company.company_status}
Attraverso la dichiarazione mette lì, vedo la company_status_id essere impostato, ma non funziona correttamente. Sto usando le guide 2.3.11. [questo] (http://stackoverflow.com/a/1065359/878451) risposta dice esattamente quello che voglio, e anche quello che sto facendo, ma ciò che non funziona. –
questo dovrebbe funzionare. mostra @ company.company_status_id e ListCache.company_statuses – tokland
Puoi pubblicare la definizione del tuo modulo perché dipende da cosa è f.object? –