2016-05-26 11 views
1

私はポストコントローラから来たオブジェクトのコレクション(@posts)からすべてのオブジェクト(ポスト)をリストしているインデックスページを持っています。Rails複数のオブジェクト選択ボックス

これらの各ポストオブジェクトにチェックボックスを追加して、自分が作成したエクスポートコントローラを介してエクスポートするオブジェクトを選択できるようにします。

フォームをセットアップして、選択したオブジェクトIDをこのエクスポートコントローラに送信するにはどうすればよいですか?

ありがとうございます。

答えて

0

チェックボックスを配列に設定します。下のHTMLのように投稿を印刷します。

HTML:

<input type="checkbox" name="post_ids[]" value="1" /> 
<input type="checkbox" name="post_ids[]" value="2" /> 
<input type="checkbox" name="post_ids[]" value="3" /> 
<input type="checkbox" name="post_ids[]" value="4" /> 

次に、コントローラで、あなたの提出した経路上でこのような値を読み取ることができます。自分自身を

post_ids = params[:post_ids] 

代わりのHTMLを書いて、私は、例えばになりますレールヘルパーの "collection_check_boxes"

http://apidock.com/rails/v4.0.2/ActionView/Helpers/FormOptionsHelper/collection_check_boxes http://apidock.com/rails/ActionView/Helpers/FormTagHelper/check_box_tag

0

あなたはこの試みることができる:あなたのhtml.erbの書き込みで を:

<% @posts.each do |post| %> 
    <%= check_box_tag "selected_posts[]", post.id %> 
<% end %> 

これはあなたのコントローラのチェックボックスでポストのIDの配列を返します。選択されました。たとえば、あなた[1、11、23 ..]返されます

params[:selected_posts] 

:このように。

関連する問題