我有一个相当简单的任务来使用聚合值过滤模型,例如:
class A(models.Model):
title = models.CharField()
address = models.CharField()
page_count = models.IntegerField()
现在,对于相同的地址,我需要选择所有A
等于page_count
的所有A.objects.all().values('address').annotate(pages=Sum(page_count)).filter(pages=2)
标题。如果我不需要标题,那将很容易:
A
但是如果我需要为每个“行”选择此行中“包括”的所有A(title='X', 'address'='aa', page_count=1)
,该怎么办?
例如,我们有三种模型:
A(title='Z', 'address'='aa', page_count=1)
A(title='Y', 'address'='bb', page_count=1)
prefetch_related
我只想显示那些标题,这些标题的总页数等于2(即“ X”和“ Z”),并使用地址分组。
在一个查询中有可能吗?可能#deny indonesia spam by its refering sites
RewriteEngine on
RewriteCond %{HTTP_REFERER} \bxnxx\b [NC]
RewriteRule .* - [F]
?
答案 0 :(得分:0)
您可以尝试这样:
A.objects.all().values('address').annotate(pages=Sum(page_count)).filter(pages=2).values('title')