2016-01-01 15 views
5

私には、サッカーチーム、サッカーチームイベント、およびイベントの場所を表す3つのモデルがあります。各サッカーチームには複数のイベントがあります。すべてのイベントに場所があるわけではありません。親モデルの日付に基づいてモデルをソートする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() 

どのように私はFootballTeamの最新 EventLocationを取得するために、Djangoのクエリを書くのですか?つまり、親モデルの日付に基づいてモデルのセットをソートするにはどうすればよいですか?

答えて

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

わかりました。私はあなたがorder_by関数でリレーションシップを検索できるかどうか分かりませんでした。ありがとう! –