私は、ユーザーがIPアドレスを左側の選択ボックスから右側に移動できる複数の選択フォームを作成しようとしています(そのオブジェクトが何であるかわかりません)。Rails複数の選択フォーム
私は私の基本的なフォームコードを持っているが、(私は無関係なコードを撮影した)の代わりにドロップダウンを示しています:
<%= form_for @network_host_groups do |f| %>
<%= f.select :network_hosts, @network_hosts.collect { |n| [ n.ip_address, n.id ] } multiple: true, include_blank: false %>
<%= f.submit "Add", class: "btn btn-success" %>
<% end %>
に似ています。しかし
、私は次のようなものを得ようとしています:
これを行う最善の方法は何ですか?生成されたHTML <select>
タグに含まれるようにRailsのオプションについては、追加属性のhtml_options
からoptions
:
[OK]をプレゼンテーションしましたが、そのロジックはどうなっていますか?左側のオブジェクトは、送信側で渡すフォーム要素を実際には含むことができません。右側のオブジェクトだけがコントローラアクションを実行する必要があるからです。私が間違っている? – Godzilla74
そうです。非常に簡単に言えば、左側の* Available *リストは、 'select_tag'ヘルパーを使って生成される可能性が高いです。つまり、最初に適切なIPアドレスが設定された' f.select ... 'を使って、 ..そして2つの矢印は、2つのリストの間で項目を移動するJavaScriptバインドを必要とします。 – mikej