2015-06-01 41 views
0

我知道如何到另一個拷貝Python對象,複製數據庫對象到Django的另一人

new_obj.__dict__ = original_obj.__dict__.copy() 

不過,雖然與數據庫玩,它覆蓋舊的對象與新的。

我知道old_obj因爲相同的id而被覆蓋。

所以我試過就是從數據庫中獲取最新的ID,並把它加1,如下所示,

obj = Author.objects.latest('id') 
put_id = obj.id + 1 

然後用這個put_id保存另一個對象。

這是正確的方法來保存複製對象數據庫或任何其他方式來實現這一自動?

+0

可能重複?](http://stackoverflow.com/questions/4733609/how-do-i-clone-a-django-model-instance-object-and-save-it-to-the-database) – rnevius

回答

4

你必須讓主鍵None,以獲取新的對象一個新的主鍵

new_object = ModelName.objects.get(pk= #OLD_OBJECT_PK) 
new_object.pk = None 
new_object.save() 
的[我如何克隆一個Django模型實例對象,並將其保存到數據庫
相關問題