通过Rails中的复选框和下拉列表更新多个记录。

时间:2012-11-28 20:08:47

标签: javascript ruby-on-rails forms drop-down-menu

假设我在索引中有几个帖子。

我需要能够通过复选框选择多个,然后选择要对所有选定记录执行的操作(删除,切换数据库中的布尔字段以使它们全部公开或私有,其他一些任意方法在所有这些,等等)使用带有选项的下拉菜单和“提交”按钮?

实现这一目标的最佳和最简单的方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以做的是根据提交操作在控制器中定义一个方法,然后逐个循环每个项目以更新每个记录

def update_multiple
  @products = Product.find(params[:product_ids])
  @products.each do |product|
    product.update_attributes!(params[:product].reject { |k,v| v.blank? })
  end
  flash[:notice] = "Updated products!"
  redirect_to products_path
end