【发布时间】:2012-03-01 01:35:47
【问题描述】:
我正在进行一系列查询以获取查询集的过滤变体。有没有一种更简单的方法可以做到这一点,我不打 DB 6 次,而是只使用初始调用?
data['os']['today'] = Page.objects.all()
data['os']['pro'] = Page.objects.filter(premium_plan=PlanType.PRO).count()
data['os']['yesterday'] = Page.objects.filter(created__lt=within_last_day).count()
data['os']['week'] = Page.objects.filter(created__lt=within_last_week).count()
data['os']['new_pro'] = Page.objects.filter(upgrade__cancelled_date__isnull=True, upgrade__activated_date=within_last_day)
data['os']['new_top_pages'] = Page.objects.filter(created__gt=within_last_day).extra(select={'total_fans':'facebook_count + twitter_count'}, order_by=('-total_fans',))[:10]
【问题讨论】: