我使用Django,我有一些带有ManyToManyFields的对象。我想复制这些对象。 我发现'deepcopy'几乎完美无缺。
>>> 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中快速完成吗?
感谢。
答案 0 :(得分:5)
只需使用旧对象添加它们:
ee = deepcopy(e)
ee.id=None
ee.save()
ee.connexion.add(*e.connexion.all())