2017-08-09 11 views
0

二つのモデル:ジャンゴSimpleListFilter最大レコード

project(models.Model): 
name = models.CharField... 

yearreport((models.Model) 
year = [2014,2015,2016] #example 
project = models.ForeignKey(project) 

""" examples: 
Project A has reports for 2014 
Project B has reports for 2014,2015 
Project C has reports for 2014,2015,2016 
""" 

私は今、プロジェクトが持つ最高/最新のレポートのためのフィルタはDjangoの管理のためのSimpleListFilter、 を構築したいです。 たとえば、2015年にフィルタリングすると、プロジェクトBのみが表示されます。 は...

は、私はいくつかのファンキーなものを試してみました

queryset.filter(Max('yearreport__year')==self.value())) 

を(通常のフィルタでは、この要求はまた、Cを示すだろう、私はそれを望んでいない)が、私はただの構文を知らないで失われました。 。

嘆願は動作するはずです私はこのようなSTHと思うおかげ

答えて

0

:)私の推測ゲームを終了:

queryset.annotate(
    max_year=Max('yearreport__year') 
).filter(
    yearreport__year=max_year 
) 
関連する問題