我目前有以下控制器方法:
def update_all
params[:users].each do |product, user|
@product = Product.find(product)
@product.update_attribute(:user_id, user)
end
redirect_to :back, :flash => { :notice => "Updated users" }
end
这可以按预期工作,但是问题是参数是通过具有默认值的 select_tag 传递的-因此,如果仅更改了一个 select 标记并提交了表单,则所有其他记录都将更新为默认值价值。如何检查属性是否已从其先前的值更改,并且仅当它已更改以更新它?