获取Django查询集中项目数的最佳方法是什么?

Saq*_*Ali 0 django django-models django-queryset

我正在做一个Django查询.我想知道有多少MyModel有myAttribute值为"X".这就是我这样做的方式:

len(MyModel.objects.filter(myAttribute="X"))
Run Code Online (Sandbox Code Playgroud)

这是处理它的最有效方法吗?我担心这会不必要地从数据库中获取比我需要的更多的数据,而是我应该使用Count()函数.但是,从我看过的例子中我发现我不确定是否可以将Count()与filter()结合起来.有人可以建议吗?

mii*_*kas 6

获得计数的最佳方法是使用count():

MyModel.objects.filter(myAttribute="X").count()
Run Code Online (Sandbox Code Playgroud)

  • 只是补充一点,关键的认识是django查询集是可链接的. (2认同)