一尘不染

如何克隆Django模型实例对象并将其保存到数据库?

django

Foo.objects.get(pk="foo")
<Foo: test>

在数据库中,我想添加另一个对象,它是上述对象的副本。

假设我的桌子有一排。我想用不同的主键将第一行对象插入另一行。我怎样才能做到这一点?


阅读 378

收藏
2020-03-26

共1个答案

一尘不染

需更改对象的主键并运行save()。

obj = Foo.objects.get(pk=<some_existing_pk>)
obj.pk = None
obj.save()

如果要自动生成密钥,请将新密钥设置为“无”。

2020-03-26