如何克隆/复制模型实例并保留其关联?

时间:2011-08-02 16:30:30

标签: ruby-on-rails ruby-on-rails-3 activerecord

现在我有以下内容,效果很好:

  e                    = Event.find(params[:based_on_id])
  @event               = e.clone
  @event.tag_ids       = e.tag_ids
  @event.subcategories = e.subcategories

但是我想避免最后两行,特别是因为我的模型将来可能会改变它的关联结构。我只想要一个原始的“新”副本,其中包括所有关联。

注意:上面的关联是has_many:through。

1 个答案:

答案 0 :(得分:1)

您可以将此代码放在重写的Event.clone方法