有没有人知道是否有办法只选择与Django中的查询匹配的行数?我有一个搜索我写的将结果分成40组,但我也想显示结果的总数。我可以像len(Model.objects.filter(name__icontains = search))这样的东西,但看起来效率非常低(因为我假设它会产生一个“SELECT * FROM模型”然后产生所有结果对象)。有什么建议吗?
答案 0 :(得分:43)
有两种主要方法可以解决这个问题:
上面的链接是Django文档的适用部分。
答案 1 :(得分:40)
使用count()
:
>>> Model.objects.count()
42
>>> Model.related_set.count()
102
>>> Model.related_set.filter(blah=42).count()
3