我有一个属性为id, name, location
的模型Foo
.
f1 = Foo.new
f1.name = "Bar"
f1.location = "Foo York"
f1.save
我想复制f1
,并从该副本中创建Foo
模型的另一个实例,但我不想将f1.id
延续到f2.id
(我不想显式地分配它,我希望db处理它,因为它应该这样做).
除了手动复制每个属性之外,还有其他简单的方法吗?任何内置函数或编写函数都是最佳途径吗?
谢谢
我有一个属性为id, name, location
的模型Foo
.
f1 = Foo.new
f1.name = "Bar"
f1.location = "Foo York"
f1.save
我想复制f1
,并从该副本中创建Foo
模型的另一个实例,但我不想将f1.id
延续到f2.id
(我不想显式地分配它,我希望db处理它,因为它应该这样做).
除了手动复制每个属性之外,还有其他简单的方法吗?任何内置函数或编写函数都是最佳途径吗?
谢谢
这就是ActiveRecord::Base#clone方法的用途:
@bar = @foo.clone
@bar.save