【发布时间】:2021-09-21 12:04:36
【问题描述】:
我在几个 Django 项目中观察到以下常见模式:
queryset = MyModel.objects.filter(...)
if queryset:
for obj in queryset:
do_something()
我意识到通过检查 queryset Django 已经在填充它的缓存,所以我们在执行 for 循环时不会再次访问数据库。
根据文档,查询集在循环时也会被评估。
所以我的问题是:
Is there any benefit in including the queryset check before the loop?
我也知道exists(),但让我们考虑一下这个特殊情况,我不会使用它。
提前感谢您的回答。
【问题讨论】:
标签: python django django-queryset