考虑以下问题:
candidates = Candidate.objects.filter(ElectionID=ElectionIDx)
此查询中的对象按其id
字段排序。
如何随机化查询中对象的顺序?可以使用.order_by()
完成吗?
答案 0 :(得分:2)
是的,您可以将特殊参数?
与order_by
一起使用来获取随机查询集:
Candidate.objects.filter(ElectionID=ElectionIDx).order_by('?')
请注意,根据数据库后端,随机化可能会很慢并且成本很高。我建议你先做基准测试。如果您觉得它很慢,那么请先尝试寻找替代方案,然后再使用?
。