有没有什么办法从查询集中删除select相关的?Django。从查询集中删除select_related
我发现,django在count()操作中添加JOIN到sql查询。 所以,如果我们有这样的代码:
entities = Entities.objects.select_related('subentity').all()
#We will have INNER JOIN here..
entities.count()
我正在寻找一种方法,以消除加入。 一个重要的细节 - 我得到这个查询集Django的进入分页程序,所以我不能简单地写
Entities.objects.all().count()
我不认为我们的情况需要重构。简单情况 - 将实体列表插入分页程序中。在一个查询中使用count和inner join有点困惑,根本不需要它(相关表上没有过滤器)。谢谢你的回答。而已。 – 2012-01-10 12:58:35
据我所知,通过给select_related提供一个参数,你在相关表上指定了一个过滤器(如果你没有为select_related()指定任何参数,它将获取所有相关对象,然后所有与这些对象相关的对象等递归)。 – 2012-03-29 21:43:39