1
我有一個允許對其對象進行評分的模型,並且我希望能夠按最高評分進行過濾,這是一個可以是正整數或負整數的數字範圍:Django按最高評分篩選查詢集
class Thing(models.Model):
user = models.ForeignKey(User)
created_on = models.DateTimeField(auto_now_add=True)
rating = VotingField(can_change_vote=True)
....
VotingField
來自a fork of django-ratings。
如何篩選此查詢集到order_by
的最高編號rating
中的所有Thing
對象中?感謝您的想法!
謝謝!這是非常豐富的!出於某種原因,'rating_score'工作,而不是'rating__score',所以最後我使用:'Thing.objects.annotate(sum_rating = Sum('rating_score'))。order_by(' - sum_rating')'。謝謝您的意見。它解決了我的問題! – 2013-02-16 22:31:19
我正在嘗試這個解決方案,它似乎工作正常。這是我第二次使用django評分,並試圖通過文檔中解釋的內容來達到此目的,但最終,像第一次一樣,我最終使用了註釋。 @Nick B對rating_score的評價對我來說也是如此,如果沒有,我會得到一個FiledError,我會提醒Django我需要在rating_score和rating_votes之間進行選擇。 – Bastian 2013-05-18 14:51:50