2016-01-01 59 views
5

假设我有三个模型,分别代表一个足球队,一个足球队的事件和一个活动地点。每个足球队都有多个活动。并非每个事件都有一个位置。Django根据父母模型的日期对模型进行排序的查询

class FootballTeam(models.Model): 

    team_name = models.CharField() 

    def get_latest_location(self): 

     # ??? 

class Event(models.Model): 

    team = models.ForeignKey(FootballTeam) 
    time = models.DateField() 

class EventLocation(models.Model): 

    event = models.ForeignKey(Event) 
    location_name = models.CharField() 

我怎样写一个Django查询检索FootballTeam的最新 EventLocation?换句话说,我如何根据父模型的日期对一组模型进行排序?

回答

4
def get_latest_location(self): 
    return EventLocation.objects.filter(event__team=self).order_by("-event__time").first() 
+0

哦,哇,我不知道你可以用order_by函数做关系查找。谢谢! –

相关问题