我有Player
,Team
和Match
模型
一个团队可以有5名以上的球员和替补球员(也许8名,也许10多名球员) 但是,一场比赛中每队必须有5名球员。
我的问题:如何选择比赛中的球员(针对该球队)
我想要这样;一个团队= 8名球员-假设他们的名字是a,b,c,d,e,f,g,h
a,b,c,d,e参加这场比赛。
B队= 7名球员,名字分别为k,l,m,n,o,p
k,l,m,n,o参加这场比赛
class Team(models.Model):
name=models.CharField(max_length=255,verbose_name="Takım ismi")
short_name=models.CharField(max_length=25,null=True,blank=True)
slug=models.SlugField(max_length=120,unique=True)
bio=models.TextField()
class Player(models.Model):
slug=models.SlugField(unique=True,max_length=120)
team= models.ForeignKey(Team,related_name='player',verbose_name='Team',on_delete=models.PROTECT,null=True,blank=True)...
class Match(models.Model):
name=models.CharField(max_length=255)
slug=models.SlugField(unique=True,max_length=255)
map=models.ForeignKey('GameMap',null=True,blank=True,related_name='matchmap',on_delete=models.PROTECT)
league=models.ForeignKey('League',blank=True,null=True,on_delete=models.PROTECT,related_name='matchleague')
team1=models.ForeignKey('Team',related_name='team1')
team2=models.ForeignKey('Team',related_name='team2')...
答案 0 :(得分:0)
您可以选择这样的球队和球员
match = Match.object.select_related().filter(name="match_name")
first_team = match.team1
sec_team = match.team2
first_players = Player.object.select_related().filter(team=first_team)
sec_players = Player.object.select_related().filter(team=sec_team)
但是您忘记了玩家名称字段吗?