вернуть объекты, указывающие на другие объекты в Django - PullRequest
0 голосов
/ 26 августа 2018

У меня есть модель UserSelect

class UserSelect(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
bowler = models.ForeignKey(Bowlers, on_delete=models.CASCADE, related_name='bowlers', null=True, blank=True)
batsman = models.ForeignKey(Batsmen, on_delete=models.CASCADE, related_name='batsman', null=True, blank=True)
team = models.IntegerField(blank=True, default='1')

, который указывает на мои две модели боулера и игрока с битой, используя внешний ключ

Я называю значения этой модели, на мой взгляд,

def team(request, pk):
user_sel = UserSelect.objects.filter(user=request.user, team=pk)
context = {
    'user_sel': user_sel,
}
return render(request, 'team_analysis.html', context)

здесь я получаю все объекты, передавая pk, но как мне получить доступ к данным двух других моих моделей боулера и бэтсмена через эти представления?

1 Ответ

0 голосов
/ 26 августа 2018

Вы можете получить к ним доступ в виде, подобном этому:

for user in user_sel:
    print(user.bowler) # bowler model object
    print(user.batsman) # batsman model object

Также вы можете получить к ним доступ в шаблонах:

{% for user in user_sel %}
    {{ user.bowler }}
    {{ user.bowler.pk }}
    {{ user.batsman }}
    {{ user.batsman.pk }}
{% endfor %}
...