我得到了一個簡單的要求(不是簡單的實現),並找出瞭如何實現它,而無需在db中創建多個命中,並且在queryset中沒有.extra()
。Django中的條件註釋
Task:
name = xxx
status = models.IntegerField(choices=some_choices)
project = ForeignKey(Project)
Project:
name = xxx
code = xxx
項目包含具有各種狀態的任務。 (假設狀態= 3已完成) 現在,我想列出與他們的總任務和完成任務的所有項目,如下面
- 項目1項,total_tasks = 5,completed_tasks = 2
- 項目1項, total_tasks = 2,completed_tasks = 1
我能夠獲得與註釋total_tasks,但不completed_tasks,因爲它在標註要求的條件。無論如何去做?
你會如何計劃使用原始SQL做到這一點呢? – 2010-08-31 09:29:23
http://stackoverflow.com/questions/2875122/django-and-conditional-aggregates – 2010-08-31 09:33:14
+1。很顯然,這種功能在覈心中並不存在。但是,有什麼辦法可以使用F()等來實現它? – 2010-08-31 09:46:46