2013-11-04 15 views
0

我有一個相當複雜的模型建立:有沒有簡單的方法從django查詢集中「提取」reated對象列表?

class Tournament(models.Model): 
    pass 

class Category(models.Model): 
    pass 

class Discipline(models.Model): 
    pass 

class Judge(models.Model): 
    pass 

class Evaluation(models.Model): 
    tournament = models.ForeignKey(Tournament) 
    judge = models.ForeignKey(Judge) 
    discipline = models.ForeignKey(Discipline) 
    category = models.ForeignKey(Category) 

當然,這些模型是不完整的,但它們的內容是不是問題......給定一個重要的比賽,我需要獲得不同的「分類「物體,以及爲這些物體評估的」學科「。

我已經試過這樣:

eval_set = tournament_object.evaluation_set.distinct('category') 
categories = [jdgt.categoria for jdgt in eval_set] 

是不是有一個更清潔的方式?我覺得應該有一種「提取('類別')」,我可以調用查詢集... 任何想法將不勝感激!

回答

3

試試這個:

categories = tournament_object.evaluation_set.distinct('category').values_list('categoria', flat=True) 

瞭解更多關於values_list here

+0

感謝隊友,我已經解決了它這樣的! – Alvaro

相關問題