2017-08-04 68 views
0

我不太确定我该怎么做,但在这里,例如,我有模特队和骑手。所以很明显球队有很多车手,所以FK在骑士队。查询从N:1表格到一个

class Team(models.Model): 
    team_name = models.CharField(_('Team name'), max_length=100, db_index=True) 
    bike = models.CharField(_('Bike'), max_length=100, db_index=True) 
    slug = models.SlugField(_('Slug'), max_length=100) 


class Rider(models.Model): 
    first_name = models.CharField(_('First name'), max_length=100, db_index=True) 
    last_name = models.CharField(_('Last name'), max_length=100, db_index=True) 
    number = models.IntegerField(_('Rider number')) 
    team = models.ForeignKey(Team) 

现在在模板中,我得到所有车队并显示出来,但在同一时间,我想,所以我使用的循环显示的团队,以显示每队车手:

{% for team in teams %} 
{% endfor %} 

现在我怎么能够得到每个车队的车手,因为我无法在模板中传递任何参数?

回答

3
team.rider_set.all() 

你可以得到所有与你的团队有关的车手。

+0

感谢它就像一个魅力!当我可以的时候会接受答案:) – HyperX

+0

我很高兴听到我的小知识对你有帮助:) – Jayground

0

更明确的解决方案是在Team FK上使用related_name。

team = models.ForeignKey(Team, related_name='riders') 

该字段设置的循环。

{% for team in teams %} 
    {% for rider in team.riders.all %} 
    {% endfor %} 
{% endfor %}