【发布时间】:2017-02-24 21:08:42
【问题描述】:
我有 3 个模型:Championship、Team 和 Match。
Championship 和 Team 与 ManyToManyField 相关联,因为每个团队可以参加多个锦标赛,每个锦标赛都有多个团队。
每场比赛都应该与一个冠军相关联,但也应该与冠军中的 2 支球队相关联。
class Championship(models.Model):
name = models.CharField(max_length=100)
teams = models.ManyToManyField(Team)
class Team(models.Model):
name = models.CharField(max_length=100)
class Match(models.Model):
championship = models.ForeignKey(Championship)
team1 = models.ForeignKey(Team)
team2 = models.ForeignKey(Team)
score1 = models.PositiveIntegerField()
score2 = models.PositiveIntegerField()
我想确保 'team1' 和 'team2' 处于 'championship' 中。而且'team1'和'team2'是不同的。
我该怎么做?
也许我可以使用 Django-smart-selects 之类的东西,但我宁愿避免使用第三方应用。
【问题讨论】:
标签: python django django-models foreign-keys