【发布时间】:2017-06-09 17:36:29
【问题描述】:
当我们使用列表作为过滤条件时,Django ORM 是否保证过滤顺序?
result = Model.objects.filter(id__in=id_list, user__id=user.id)
id_list 是这样的:[1, 2, 3, 4, 5]
结果总是保持id_list后面的顺序吗?
Django 文档在哪里提到了这个? 谢谢!
【问题讨论】:
-
您是在问
result中的项目是否与id_list中的相应项目具有相同的顺序?如果是这样:不,数据库不保证这一点,Django 也不保证。如果没有使用order_by()的显式排序,则顺序是任意的。 -
@knbk "你是问result中的items是否和id_list中对应items的顺序相同?" > YES 谢谢!
标签: django django-models django-orm