i haben zwei identische collection_selects auf einer Seite (eine Nachricht zu 2 Gruppen gehören)collection_select ausgewählten Wert
<%=
collection_select(:message,:group_ids, Group.find(:all),:id, :title, {}, {:name=>'message[group_ids][]'})
%>
<%=
collection_select(:message,:group_ids, Group.find(:all),:id, :title, {}, {:name=>'message[group_ids][]'})
%>
ist es möglich, verschiedene ausgewählte Werte zu setzen beiden für sie collection_select verwenden?
bearbeiten:
ich denke, ich, wie etwas zu tun haben würde
<%
@message.group_id=5
%>
<%=
collection_select(:message,:group_id, Group.find(:all),:id, :title, {}, {:name=>'message[group_ids][]'})
%>
<%
@message.group_id=6
%>
<%=
collection_select(:message,:group_id, Group.find(:all),:id, :title, {}, {:name=>'message[group_ids][]'})
%>
aber natürlich funktioniert es nicht und gibt Fehler Methode fehlt
edit2:
denke, es gibt keine Möglichkeit, es mit collection_select zu tun. Es sei denn, die Gruppe hat eine Methode und gibt jedes Mal eine einzelne group_id zurück.
, was ich am Ende mit ist
select_tag 'message[group_ids][]', "<option></option>"+options_from_collection_for_select(Group.find(:all), 'id', 'title',group1.id)
select_tag 'message[group_ids][]', "<option></option>"+options_from_collection_for_select(Group.find(:all), 'id', 'title',group2.id)
Erste Frage ist, warum versuchen Sie dies? –
Frage war ein Beispiel, was ich eigentlich versuche zu tun ist <% @ message.groups.each do | group | %> <% = collection_select (: Nachricht, group.id, Group.find (: alle) ,: id,: Titel, {}, {: name => 'Nachricht [group_ids] []'}) %> <% Ende %> Nachricht HABTM Beziehung mit Gruppen hat, so hat es GROUP_IDs Methode, aber collection_select mir nicht erlaubt, group.id zu verwenden, oder: ausgewähltes Schlüsselwort Vielen Dank für einen Kommentar, aber Ich denke, dass ich eine andere Lösung verwenden werde (ich fügte Edit zu Frage hinzu). –