我在我的 Django 模型中有一个循环依赖关系,这样模型 A 有一个对 B 的外键引用,而 B 有一个对 A 的多对多引用。我已经查阅了其他 SO 帖子并改用了字符串模型名称的实际课程,但无济于事。这是我的两个课程的缩写版本:
用户模型
import listings.models
class User(models.Model):
...
favorites = models.ManyToManyField('listings.models.Listing')
上市模式
import users.models
class Listing(models.Model):
...
owner = models.ForeignKey('users.models.User')
每次我尝试运行syncdb时,它都会输出以下错误:
错误:一个或多个模型未验证:users.user:'favorites' 与模型 listings.models.Listing 具有 m2m 关系,该模型尚未安装或是抽象的。Listings.listing:“所有者”与模型 users.models.User 有关系,该模型尚未安装或抽象。
如何在不牺牲既定关系的情况下解决这个问题?