首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Django模型选择计数?

使用Django模型选择计数?
EN

Stack Overflow用户
提问于 2010-07-31 00:41:05
回答 2查看 68.2K关注 0票数 31

有没有人知道在Django中是否有一种方法可以只选择匹配查询的行数?我编写了一个搜索,将结果分成40个一组,但我也想显示结果的总数。我可以使用像len(Model.objects.filter(name__icontains=search)),这样的东西,但这似乎效率非常低(因为我假设这将生成一个"SELECT * FROM模型“,然后生成所有的结果对象)。有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-31 01:06:25

有两种主要的方法来处理这个问题:

Ref: Django Aggregation Documentation表示,当您“检索通过汇总或聚合对象集合派生的值”时,

  1. 就会使用Django's count() QuerySet method --只需将aggregate over the QuerySet ()附加到适当的聚合的末尾。

上面的链接指向Django文档的适用部分。

票数 46
EN

Stack Overflow用户

发布于 2010-07-31 00:50:12

使用count()

代码语言:javascript
复制
>>> Model.objects.count()
42
>>> Model.related_set.count()
102
>>> Model.related_set.filter(blah=42).count()
3
票数 49
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3373565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档