我有一个由(id,rank)组成的字典。我想对id执行一个Django查询,这样生成的查询集按rank(降序)排序。如何通过外部值对Django QuerySet进行排序?
获取查询集很简单:
rankings = {...}
result = MyModel.objects.filter(id__in=rankings.keys())
好像答案应该包括某种形式的注解,我可以作为ORDER_BY的一部分使用,但我无法弄清楚如何到达那里。
编辑:我忽略提到,我需要的结果是一个QuerySet,因为这是一个tastypie API管道的一部分。
我不认为你可以做到这一点。如何将这些值存储在字段中? – dannyroa
等级在每个查询上发生变化。应用程序正在查看一组学校,并根据表达的偏好为用户排名。 –