您如何处理模型 (A) 依赖于定义的模型 (B),但模型 (B) 也依赖于定义的模型 (A) 的情况。
例如,我有
class event(models.Model):
competition_start = models.DateField()
competitors = models.ManyToManyField(picture)
results = models.CommaSeparatedIntegerField(max_length=20)
class picture(models.Model):
uploader = models.OneToOneField(UserProfile)
upload_date = models.DateField()
image = models.ImageField(upload_to="media")
score = models.DecimalField(max_digits=10,decimal_places=10)
score_RD = models.DecimalField(max_digits=10,decimal_places=10)
rated = models.BooleanField()
last_competed = models.DateField()
competition = models.OneToOneField(event)
竞争者领域依赖于定义的图片,但图片依赖于定义的事件。
请注意,每张图片 (A) 与一个事件共享一对一的关系,但该事件可以涉及多个其他图片(集合(S)-A)。
我试着换成推杆
competitors = models.ManyToManyField(picture)
user_pic = models.OneToOneField(picture)
在事件内部并摆脱“竞争”领域,但我相信 SQL 不允许这样做。有人可以解释为什么吗?
如果我需要一个字段的 OneToOne 关系和另一个字段的 ManyToMany 关系,我应该执行什么修复?(在两个相同的班级之间)
谢谢 :)