小编典典

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

all

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

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

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


阅读 65

收藏
2022-04-14

共1个答案

小编典典

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

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

如果您想要自动生成的密钥,请将新密钥设置为无。

更多关于
UPDATE/INSERT的信息

关于复制模型实例的官方文档:https
://docs.djangoproject.com/en/2.2/topics/db/queries/#copying-model-
instances

2022-04-14