0
我的數據遷移引用了一個函數,該函數將當前模型的對象作爲參數,然後嘗試從另一個表中創建一個對象同一個應用程序)通過一個外鍵。該對象的創建失敗,並顯示一個值錯誤,指出作爲參數傳遞的對象不是預期類的實例(儘管如此)。這兩個表格似乎沒有聯繫。當函數嘗試通過外鍵訪問表時,南數據遷移失敗並出現ValueError
這裏是數據遷移。
for ranking in orm.Ranking.objects.all():
find_matching_domains(ranking)
find_matching_domains
在另一個應用程序中聲明並導入數據遷移。嘗試創建字典對象時失敗。
dico = CategoryDict(category=ranking.category,
key="url_dict",
value=url_dict)
,出現以下錯誤:
File "...", line 175, in save_url_dict value=url_dict)
File ".../lib/python2.6/site-packages/django/db/models/base.py", line 355, in __init__ setattr(self, field.name, rel_obj)
File ".../lib/python2.6/site-packages/django/db/models/fields/related.py", line 366, in __set__ self.field.name, self.field.rel.to._meta.object_name))
ValueError: Cannot assign "<Category: Category object>": "CategoryDict.category" must be a "Category" instance.
我已經凍結在遷移相應的模式,但這並不具效力。
我使用Django 1.4.3。
我不是南方用戶,但您可能需要發佈更完整的代碼才能獲得較好的答案。 –
從我目前的理解來看,我不可能在遷移中做我想做的事情。我通過管理界面觸發更新方法解決了我的問題,而不是使用遷移。 – lechatpito