我有这个循环:
start = datetime.now()
for entry in entries:
related_entries = Related.objects.filter(entry_id=entry.entry_id, status='Related')
lead_related_entries.append({'Entry': entry, 'related_entries': related_entries})
end = datetime.now()
print (end - start)
我的执行时间差不多超过7000次:
0:00:10.377000
有什么任务可以让它更快吗?
答案 0 :(得分:0)
使查询运行得更快的一件事是使用Lazy loading
,因此您只需加载最初需要的字段。如果您以后需要更多字段,Django将足够聪明,可以在您调用字段时为您提取它们。
参考: https://docs.djangoproject.com/en/dev/ref/models/querysets/#django.db.models.query.QuerySet.only