Как получить доступ к данным таблицы django join?

Я пытаюсь получить доступ к данным в таблице join с помощью django. У меня есть список пользователей и список групп в отношениях ManyToMany.

class Member(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    groups = models.ManyToManyField(Group, related_name="members")

class Team(models.Model):
    name = models.CharField(max_length=25)
    creator = models.ForeignKey("footballteamapi.Member", on_delete=models.CASCADE)

Таблица присоединения выглядит следующим образом:

footballteamapi_member_teams
id+member_id+team_id
1+1+1
2+1+2
3+2+1

Как мне получить доступ к этой таблице, поскольку нет совпадающей модели для ссылки (т.е. Team.objects.all())?

Вы можете использовать доступ к таблице Team в обратном направлении следующим образом:

member = Member.objects.get(id="<member-id>")
teams = member.team_set.all()

Но мне нравится устанавливать опцию related_name в поле ForiegnKey следующим образом:

class Team(models.Model):
    creator = models.ForeignKey(..., related_name='teams')
    ...

Тогда вышеупомянутое изменяется на:

member = Member.objects.get(id="<member-id>")
teams = member.teams.all()
Вернуться на верх