尽管Django文档建议使用
count而不是
len:
注意:
len()如果要确定的是记录集中的记录数,请不要在QuerySet上使用。使用SQL的在数据库级别处理计数效率更高SELECTCOUNT(*),而Djangocount()为此提供了一种方法。
由于无论如何都要迭代此QuerySet,结果将被缓存(除非使用
iterator),因此最好使用
len,因为
这样可以避免再次访问数据库,也可以避免获取不同数量的结果 !) 。
如果您使用
iterator,则出于相同的原因,我建议您在遍历(而不是使用count)时包括一个计数变量。



