您好想复制旧对象的一些属性并创建具有很少更改属性的新对象。我使用的是 rails 3.0.7 版,因此我无法使用 old_object.dup。我不想使用 old_object.clone 因为它给了我记录的浅表副本,包括复制冻结状态。因此我遵循以下方法
@old_product = Product.find(params[:id])
@product = Product.create(@old_product.attributes.merge({:description => params[:product][:description], :category => params[:product][:box_id], :user_id => current_user.id}))
但它给了我错误用户不能为空。事实上,它也没有存储我的描述和类别。这是正确的方法吗?复制旧对象属性并更改其中一些属性的任何其他方法。