外键关系问题

2024-04-25 04:25:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经用外键定义了不同应用的两个模型之间的关系,并且用外键实例将数据准确地插入到数据库中,但是我想用Django ORM获取数据,但是我没有得到它,我已经搜索了这个问题,也检查了堆栈溢出问题,但是我的问题仍然没有得到解决。你知道吗

#models.py

class teamInfo(models.Model):       
    ownerID = models.IntegerField()
    teamName = models.CharField(max_length=50)

    def __unicode__(self):
         return unicode(self.id)

class gameWorld(models.Model):
    team = models.ForeignKey(teamInfo)
    w = models.IntegerField(null=True)
    l = models.IntegerField(null=True)

    def __unicode__(self):
        return unicode(self.id)

在我看来,我试过几件事,但都不管用。以下是我在自己的观点中尝试过的最新情况:

def teamStandings(request,template=None,context=None):

    getAllTeamStat = gameWorld.objects.all()

    for i in getAllTeamStat.teaminfo_set.select_related() :
        raise Exception(i.teaminfo.teamName)

我只需要一个Django ORM查询,它从两个模型中获取数据,以便在模板中显示团队名称


Tags: django模型selfidmodelreturnmodelsdef
2条回答

请看here并尝试:

class TeamStandingsView(ListView):
    model = gameWorld
    template = # Some template path here!
    context_object_name = "games"

在模板中:

{% for game in games %}
    {{ game.team.teamName }} 
{% endfor %}

编辑:这应该可以:

def teamStandings(request,template=None,context=None):
        getAllTeamStat=gameWorld.objects.all()
        for team in getAllTeamStat:
            for teaminfo in team.teaminfo_set.all():
                 print teaminfo.teamName

相关问题 更多 >