0

モデルを更新したい - チェックボックスをクリックしてコメントを挿入した行のみ

意見:

<%= form_tag update_fb_instruction_users_path, :method => :put do %>
<% @user_wishes.each do |u| %>
   <%= u.user.name %>
      <%= fields_for "instruction[]", u do |f| %>
      <%= f.text_field :remark_tl %>
   <% end %>
   <%= check_box_tag "instruction_user_ids[]", u.id %>

<% end %>

コントローラ:

def update_fb

params[:instruction_user_ids].each do
@check = InstructionUser.update(params[:instruction].keys, params[:instruction].values).reject { |p| p.errors.empty? }
end
4

1 に答える 1

-1

問題は、それらがすべて同じ名前を持っていることです。したがって、最後の値が何であれ、それがリクエストパラメーターに含まれます。

少し古いですが、こちらの Railscast をチェックしてみてください: http://railscasts.com/episodes/73-complex-forms-part-1。基本的な考え方は、各ユーザー オブジェクトの上で fields_for を使用することです。私は以前にそれを自分でやったことがありません。そうでなければ、完全な解決策を書きます:)。

于 2012-09-06T13:56:04.980 に答える