我有一个名为'StoreItem'的模型和一个名为'QuoteItem'的模型。 QuoteItem指向一个StoreItem。django注释 - 条件计数
我想注释一个有多少报价商品指向商店商品的计数器,但有条件适用于报价商品。
我想是这样的:
items = items.annotate(
quote_count=Count(
Case(
When(quoteitem__lookup_date__in=this_week, then=1),
output_field=IntegerField()
)
)
)
'项目' 是StoreItems的查询集。 'this_week'是代表本周的日期列表(这是我尝试应用的过滤器)。在我使日期事情工作后,我想添加更多的过滤器到这个有条件的计数,但让我们开始。
反正什么我越来越更像是一个布尔 - 如果符合条件存在,不管我有多少有报价的项目,计数器为1。否则,将为0
它看起来像Count(Case())
只检查是否有任何项目存在,如果是的话返回1,而我希望它遍历所有指向商店项目的报价项目并对它们进行计数,如果它们符合条件(单独)。
我该如何做到这一点?