0

edit_multiple私はそのようなIDのリストを取るアクションを持っています:

def edit_multiple
  @products = Product.find(params[:product_ids])
end

そしてroutes.rb:

resources: products do
  collection do
    post :edit_multiple
  end
end

productsそして、次のようなパスへの引数として渡したいビューの変数内の製品のコレクションlink_to:

<%= link_to edit_multiple_products_path(:product_ids => products), :method => :post do %>
  update products
<% end %>

リンクをクリックすると、次のエラーが表示されます。

Couldn't find Product with id=#<ActiveRecord::Relation::ActiveRecord_Relation_Product:0x495c900>

Rails 4を使用していることに注意してください

4

2 に答える 2

2

製品 ID が配列として提供される場合はwhere、 ではなくを使用しfindます。

@products = Product.where("id in (?)", params[:product_ids])
于 2013-09-16T17:25:39.067 に答える