我的mongodb中有类似的文件
{'id':1, 'url': www.aaa.com},{'id':3, 'url': www.ccc.com},{'id':2, 'url': www.bbb.com}
Model.Objects.filter(id__in=[1,2,3])
我希望将结果作为上面的Django查询
[Model:aaa.com>,Model:bbb.com>,Model:ccc.com>]
我的意思是,如何在过滤器查询中按给定列表的顺序得到结果.ie id = 1,id = 2,id = 3
我总是没有得到结果。这只是样本文件。
答案 0 :(得分:0)
默认情况下,除非您声明order_by
,否则不会对Queryset进行排序。见https://docs.djangoproject.com/en/dev/ref/models/querysets/#queryset-api
尝试Model.Objects.filter(id__in=[1,2,3]).order_by("id")
答案 1 :(得分:0)
据我所知,内置order_by
只允许您按表中的列按升序或降序排序。如果您想自定义订单,则需要自己编写sorting函数。