如何从manytomany字段django中获取数据

问题描述 投票:0回答:1

因为我有很多用户。我想获取参加特定会话的用户的名称Players_Participating

class MyUser(AbstractBaseUser):

    user_name=models.CharField(max_length=10,blank=True,null=True,unique=True)

    def __str__(self):
        return str(self.user_name)

class Session(models.Model):

    Host=models.ForeignKey(MyUser,on_delete=models.CASCADE,related_name='host')
    game=( 
        ('cricket','cricket'),
        ('football','football'),
        ('basketball','basketball'),
        ('hockey','hockey'),
        ('gym','gym'),
        ('baseball','baseball'),
    )

    Sport=models.CharField(max_length=20,choices=game)

    Players_Participating=models.ManyToManyField(MyUser,related_name='related')
    def __str__(self):

        return str(self.Host)
django django-models django-orm
1个回答
0
投票

您可以尝试像这样使用prefetch_related:

s = Session.objects.get(that particular session).prefetch_related('host')

[此外,此问题已在herehere中得到了解答您会在其中找到很多对您有所帮助的链接。 :)

© www.soinside.com 2019 - 2024. All rights reserved.