如何在 Django 中获得外键关系的对面
how to get opposite side of a foreign key relation in django
我有以下关系:
class Team(models.Model):
name = models.CharField(max_length=255)
def players(self):
????
class Player(models.Model):
user = models.OneToOneField(User, related_name="player")
team = models.ForeignKey(Team)
从团队对象中,我想得到属于它的所有球员。
如何获取这种相反关系中的值?
这在 documentation on following relationships backward 中有一些详细介绍。
给定一个 Team
对象 team
,你得到玩家:
team.player_set.all()
您可以通过在 ForeignKey
定义中设置 related_name 参数来覆盖 player_set
名称。
你可以这样做;
def players(self):
return self.player.all()
我有以下关系:
class Team(models.Model):
name = models.CharField(max_length=255)
def players(self):
????
class Player(models.Model):
user = models.OneToOneField(User, related_name="player")
team = models.ForeignKey(Team)
从团队对象中,我想得到属于它的所有球员。
如何获取这种相反关系中的值?
这在 documentation on following relationships backward 中有一些详细介绍。
给定一个 Team
对象 team
,你得到玩家:
team.player_set.all()
您可以通过在 ForeignKey
定义中设置 related_name 参数来覆盖 player_set
名称。
你可以这样做;
def players(self):
return self.player.all()