我是一名法国学生,正在学习Django。我的项目是创建一个网站,使您可以管理体育赛事。 这是我的课程图:
我在锦标赛表中有一个属性“ nbMaxTeam”,例如,如果该属性等于4,我希望当我创建与锦标赛相关的第5支队伍时告诉我这是不可能的。我该如何使用我的模型呢?
class Team(models.Model):
name = models.CharField(max_length=16)
nbplayers = models.IntegerField()
totalpoints = models.IntegerField()
position = models.IntegerField(default=0)
pool = models.ForeignKey(Pool, default=None, on_delete=models.CASCADE)
tournament = models.ForeignKey(Tournament, default=None, on_delete=models.CASCADE)
class Tournament(models.Model):
name = models.CharField(max_length=32)
dateStart = models.DateField(auto_now=False, auto_now_add=False)
dateEnd = models.DateField(auto_now=False, auto_now_add=False)
nbMaxTeam = models.IntegerField()
答案 0 :(得分:1)
可能希望查看文档,尤其是模型验证:https://docs.djangoproject.com/en/2.2/ref/models/instances/#id1
答案 1 :(得分:0)
您可以在views.py中查看已经属于您的锦标赛的球队数量。
例如,在将团队添加到您的第一个锦标赛中时:
def create_team(request):
tournament = Tournament.objects.get(id=1)
if tournament.nbMaxTeam < 4:
team = Team.objects.create(tournament=tournament)
else:
# Do something else...