0

私はRoR 3をform_tag、checkbox_tag、およびsubmit_tagとともに使用して、IDのコレクションをコントローラーに送信しています。

メッセージのテーブルがあり、送信されたアイテムを選択してアクションを実行できるチェックボックスが必要です。私からしてみれば:

<%= form_tag :name => "mailgrid",:id=>"submit",:action => "inbox_action" do  %>
...
<td class="mailbox_from"><%= check_box_tag 'msg_ids[]', message.id %></td>
...
<%= submit_tag "delete", :name => 'commit', :value=>'delete' %>
<% end %>

これにより、次のような HTML が生成されます。

<form accept-charset="UTF-8" action="/messages/inbox_action/submit?name=mailgrid" method="post">
...
<input id="msg_ids_" name="msg_ids[]" style="position:relative;top:-2px;right:10px;" type="checkbox" value="88" />
...
<input name="commit" type="submit" value="delete" /> </div>

次に、私のコントローラーで:

  if params[:msg_ids]
      #dostuff
  end

ただし、これらのチェックボックスが選択されているかどうかは、コントローラーに渡されません。私のログでは、このコントローラー メソッドが呼び出されても、これらのパラメーターが完全に欠落しています。ログは次のとおりです。

2013-02-05 19:43:02 -0800 で 127.0.0.1 の POST "/messages/inbox_action/submit?name=mailgrid" を開始しました

MessagesController#inbox_action による HTML としての処理

パラメータ: {"utf8"=>"✓", "authenticity_token"=>"asdf", "commit"=>"delete", "name"=>"mailgrid", "id"=>"submit"}

私が間違ったことについてのアイデアはありますか?

4

1 に答える 1

0

あなたが試してみたらどうですか

<%= check_box_tag......., params[:your_param], ..... %>

私はルビーの初心者ですが、それが問題のようです。間違っている可能性がありますが、

于 2013-02-06T04:32:01.280 に答える