У меня есть модель под названием «История», в которой есть два целочисленных поля, которые называются «взгляды» и «голоса».Когда я получаю все объекты Story, я хотел бы аннотировать возвращенный QuerySet с полем «рейтинга», которое просто «просмотры» / «голоса».Тогда я бы хотел отсортировать QuerySet по «ранжированию».Что-то вроде ...
Story.objects.annotate( ranking=CalcRanking('views','votes') ).sort_by(ranking)
Как я могу сделать это в Django?Или это должно быть сделано после получения QuerySet в Python (например, создание списка, который содержит рейтинг для каждого объекта в QuerySet)?
Спасибо!
PS: В моей настоящей программерасчет ранжирования не так прост, как указано выше, и зависит от других фильтров исходного QuerySet, поэтому я не могу сохранить его как другое поле в модели Story.