0

私はそのようなことをします:

Player.objects.distinct().filter(Q(game1_set=game) | Q(game2_set=game))

をプレイしたすべてのプレイヤーを返しますgamegame1_setfilter: first と thenのように、結果を順序付けたいgame2_set。しかし、そうではありません。によって注文されていidます。

また、QuerySet結果が必要なので、2 つのリストをマージすることはできません。

models.py理解を深めるために、次のようにします。

class Player(models.Model):
    game1_set = models.ManyToManyField('Game', verbose_name='players1')
    game2_set = models.ManyToManyField('Game', verbose_name='players2')

class Game(models.Model):
    # some fields here
4

1 に答える 1

2

追加してみてください.order_by('game1_set','game2_set')

Player.objects.distinct().filter(Q(game1_set=game) | Q(game2_set=game)).order_by('game1_set','game2_set')
于 2013-02-09T16:45:55.587 に答える