【发布时间】:2017-02-13 11:54:02
【问题描述】:
我有一个查询集:-
queryset = my_object.someobject_set.all()
从那里开始,我想从查询集中进行过滤。即:
print queryset.filter(name='some1').exists()
print queryset.filter(name='some2').exists()
print queryset.filter(name='some3').exists()
但是对于每个过滤器查询,都会再次命中数据库。如何缓存查询集然后从中过滤?
我什至尝试在过滤之前评估查询集:-
print len(queryset)
但这不起作用。 有什么帮助吗??
【问题讨论】:
-
或者您的意思是这是 3 个不同的查询?
-
是的,我的意思是 3 个不同的查询
-
然后在示例中修复您的代码
-
已经完成。请再次检查。
-
查看更新的答案
标签: django performance django-models django-queryset django-cache