Джанго матч-команда-игрок отношения игрок выбрать - PullRequest
0 голосов
/ 07 июля 2019

у меня 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')...

1 Ответ

0 голосов
/ 09 июля 2019

Вы можете выбрать команды и игроков, как это

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)

а вы забыли поле имени игрока?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...