2013-04-28 66 views
1

我有一個Django項目,我需要兩個模型互相擁有一個外鍵。然而,這是不可能的,因爲兩個Python文件必須導入Python不允許的其他文件。解決這個問題的最好方法是什麼?在Django 1.4中交叉引用外鍵

所以我的代碼目前看起來是這樣的:

國家/ models.py:

from django.db.models import Model, ForeignKey 
from users.models import Profile 

class Country(Model): 
    president = ForeignKey(Profile) 

用戶/ models.py:給予

from django.db.models import Model, ForeignKey 
from countries.models import Country 

class Profile(Model): 
    citizenship = ForeignKey(Country) 

錯誤是:導入錯誤:無法導入名稱配置文件

回答

5

您可以將字符串引用模型:

users/models.py:

from django.db.models import Model, ForeignKey 

class Profile(Model): 
    citizenship = ForeignKey('countries.Country')