【发布时间】:2011-04-07 05:46:17
【问题描述】:
给定一个 ids/pks 列表,我想生成一个 QuerySet 按列表中的索引排序的对象。
通常我会开始:
pk_list = [5, 9, 2, 14]
queryset = MyModel.objects.filter(pk__in=pk_list)
这当然会返回对象,但是按照模型元排序属性的顺序,我希望按照pk_list中的pks 的顺序获取记录。
最终结果必须是 一个 QuerySet 对象(不是列表),因为我希望将有序的 QuerySet 传递给 Django 的 ModelMultipleChoiceField 表单字段。
【问题讨论】:
-
在 MySQL 和 PostgreSQL 的数据库级别:blog.mathieu-leplatre.info/…
-
从 Django >= 1.11 开始,您可以按照我在这里的建议进行操作:stackoverflow.com/questions/5966462/…
标签: python django django-queryset