私はそのようなことをします:
Player.objects.distinct().filter(Q(game1_set=game) | Q(game2_set=game))
をプレイしたすべてのプレイヤーを返しますgame
。game1_set
filter: 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