给定一个id/pks列表,我想生成列表中由索引排序的对象的QuerySet
。Django查询集按ID自定义排序
一般情况下我首先:
pk_list = [5, 9, 2, 14]
queryset = MyModel.objects.filter(pk__in=pk_list)
这当然返回的对象,但在模型元排序属性的顺序,我希望得到的pk
S的顺序记录在pk_list
。
最终的结果必须是一个QuerySet
对象(不是列表),因为我希望通过有序QuerySet
到Django的ModelMultipleChoiceField
表单域。
在数据库级别为MySQL,PostgreSQL及:http://blog.mathieu-leplatre.info/django-create-a-queryset-from-a-list-preserving-order.html – Medorator 2014-08-25 06:58:07