0
我有兩個型號,Item
和Vote
:Django:我如何註釋ForeignKey關係中的值的總和?
class Item(models.Model):
name=CharField(max_length=75)
class Vote(models.Model):
item = ForeignKey(Item)
value = IntegerField()
我想提供項目列表的查詢集中的票值之和的順序。我想:
items = Item.objects.annotate(Sum('votes__value')).order_by('votes__value')
但在情況下,我有兩票 - 一個value = 0
和一個value = 1
- 我獲得兩個Item
實例的queryset的,爲此item1 == item2
!
如何正確構造此查詢集?謝謝!
它會更容易看到什麼是在項目,但作爲第一句話,應該不是很Item.objects.annotate (總和( 'votes__value'))。ORDER_BY( 'votes__value__sum')。 –
@JulienGrégoire項目只有一個項目,名稱和兩票。一票有價值= 1,一票有價值= 0。數據庫中只有一個項目實例但我的調用返回兩個這一事實令我震驚! 立即嘗試您的解決方案。 – YPCrumble
@JulienGrégoire明白了 - 正是我需要的,謝謝! – YPCrumble