Django - QuerySet для многомерного списка - PullRequest
0 голосов
/ 08 июля 2011

У меня есть следующие модели:

class Fixture(models.Model):
    id = models.AutoField(primary_key=True)
    home_team = models.ForeignKey(Player, related_name="home")
    away_team = models.ForeignKey(Player, related_name="away")
    game_week = models.PositiveSmallIntegerField(max_length=2, default=0)

Я хочу создать многомерный список, который группирует все мои объекты осветителей по свойству game_week.Например:

   fixtures[0] = [<FixtureObject 1>, <FixtureObject 2>]
   fixtures[1] = [<FixtureObject 3>, <FixtureObject 4>]
   fixtures[2] = [<FixtureObject 5>]
   fixtures[3] = [<FixtureObject 6>]

Где индексы списка игр - это разные игровые недели.Какой самый простой, самый питонический способ сделать это?

1 Ответ

2 голосов
/ 08 июля 2011

Самый простой способ сделать это - использовать словарь:

 fixtures = Fixture.objects.all()
 fixture_dict = {}
 for fixture in fixtures:
    fixture_dict.setdefault(fixture.game_week, []).append(fixture)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...