使用ManyToManyFields复制django对象



我使用Django,并且我有一些带有ManyToManyFields的对象。我想复制这些物品。我找到了"深度复制",它几乎完美地工作。

>>> e = Equipement.objects.get(pk=568)
>>> ee = deepcopy(e)
>>> ee.connexion.all()
[<Connexion: COMETE - Proxyweb>]
>>> ee.id=None
>>> ee.save()
>>> ee.connexion.all()
[]

我不想在保存时丢失ManyToMany信息。你知道在Django中快速做到这一点的诀窍吗?

谢谢。

只需使用旧对象添加它们:

ee = deepcopy(e)
ee.id=None
ee.save()
ee.connexion.add(*e.connexion.all())

相关内容

  • 没有找到相关文章

最新更新