我有一个多态关联。每当我在上面调用.dup方法并将其保存到另一个关联时,原来的就会消失
示例:用户有事件。用户和事件具有名为Type的多态属性。当用户创建事件时,应将用户的类型分配给事件
@user = User.find(params[:id])
@event = @user.events.build(event_params)
@event.types = @user.types.dup
但是当我保存事件时,@ user dissapear中的类型来自数据库!
为什么呢? Dup应该重复。
修改 似乎DUP没有将ActiveRecord ID设置为nil,因此它将ActiveRecord更新为Event。