31👍
✅
There is no point in converting a data list back to a query. A query object never holds data; it just represents a query to the database. It would have to fetch everything again if you made your list to a query, and that would be redundant and very bad performance-wise.
What you can do:
- Describe how the
reputation
field is calculated; it’s probably possible to order the data in the database somehow. - Modify the view to not require a query object. If it needs to do additional filtering etc. this should be done before any ordering, since the ordering will take less time with less entries (and less data will be fetched from the database.) So you could send the filtered query object to the sort function just before you send it to the template (which shouldn’t care whether it’s a query or a list.)
117👍
Ok…this post is now old BUT what you could do is get all the ids
of the objects in your list, then perform a model.objects.filter(pk__in=list_of_ids)
- [Django]-Django Model – Get distinct value list
- [Django]-Django-DB-Migrations: cannot ALTER TABLE because it has pending trigger events
- [Django]-Django: remove a filter condition from a queryset
Source:stackexchange.com