Staram się mieć następujący kod HTML w moim formularzu:Wiele wartości collection_select
<select name="user[language_ids][]">
<option value="">Please select</option>
<option value="1" selected="selected">English</option>
<option value="2">Spanish</option>
</select>
<select name="user[language_ids][]">
<option value="">Please select</option>
<option value="1" selected="selected">English</option>
<option value="2">Spanish</option>
</select>
Aby umożliwić użytkownikowi wybrać dwa języki, kiedy podpisuje się.
Próbowałem z tym:
<%= f.label :languages %>
<%= f.collection_select(:language_ids, Language.all, :id, :name) %>
<%= f.collection_select(:language_ids, Language.all, :id, :name) %>
A także z tego:
<%= f.label :languages %>
<%= f.collection_select(:language_ids[], Language.all, :id, :name) %>
<%= f.collection_select(:language_ids[], Language.all, :id, :name) %>
Po revieweing odpowiedź, próbowałem z tym:
<%= collection_select(:user, :language_ids, Language.all, :id, :name, {}, {:name => 'user[language_ids][]' }) %>
<%= collection_select(:user, :language_ids, Language.all, :id, :name, {}, {:name => 'user[language_ids][]' }) %>
Ale problem tutaj oba selekcje mają ten sam identyfikator, a także nie są powiązane z konstruktorem formularzy f
Jakieś przemyślenia na najlepszy sposób na zrobienie tego?
widzisz identyfikatory języków zamiast ich nazw w show.html.erb? – uday
W jaki sposób pola wyboru odnoszą się do modelu? –