Django中的pk__in是什么意思?
Model.objects.filter(pk__in=[list of ids])
和
Model.objects.filter(pk__in=[1,2,3])
我该如何在模板中显示这些数据?
def xx(request):
return HttpResponse(Model.objects.filter(pk__in=[1,2,3]))
2 个回答
0
这里有一个聪明的方法,可以批量选择数据(在处理大量数据时,这是一种最佳实践)。因为只发送了一条SQL查询,所以它比在循环中调用get/get_or_create要快。
试着测一下这个:
Model.objects.filter(pk__in=[list of ids])
还有这个:
[Model.objects.get(pk=i) for i in ids]
另外要注意,在你的笔记本电脑上,Django与数据库之间的通信延迟很小(在生产环境中可能会有所不同)。