我正在尝试通过在我的查询集上使用 iterator() 来优化我的 Web 应用程序以节省内存。
但是,如果我这样做:
q = (
Q(longname__icontains = query) |
Q(genus__icontains = query) |
Q(specific_epithet__icontains = query) |
Q(infraspecific_epithet__icontains = query) |
Q(collectedby__personname__icontains = query) |
Q(islandname__icontains = query) |
Q(es_name__icontains = query) |
Q(en_name__icontains = query) |
Q(local_name__icontains = query)
)
query_set = Specimen.objects.filter(q).order_by('longname').iterator()[:1000]
我收到以下错误:
TypeError at /search/
'generator' object is not subscriptable
如果我尝试:
query_set.count()
我得到:
AttributeError at /search/
'generator' object has no attribute 'count'
我的问题是 - 我如何在这种类型的查询上使用迭代器,它真的值得吗?
非常感谢任何帮助。