如何将字典追加到Django查询集中?我已经在queryset上使用了.values,但它仍然分类为queryset,当我尝试在它上使用.append时,出现了这个错误
AttributeError: 'QuerySet' object has no attribute 'append'
字符串
下面是我的代码:(start和end是传入的变量,用于表示所选范围的开始月份和结束月份)
qs = CustomerInformation.objects.filter(salesDepartment__in=[d]).filter(created_date__range=(start,end))
qs = qs.annotate(date=TruncMonth('created_date')).values('date').annotate(lead_count=Count('status',filter=Q(status="lead"))).annotate(client_count=Count('status',filter=Q(status="client")))
qs = qs.values('date', 'client_count', 'lead_count')
型
我想做的就是将缺少的日期添加到查询集,例如如果我的查询集有日期:2020年4月和2020年6月,但由于CustomerInformation没有任何在2020年5月范围内的created_date示例,因此我希望能够插入一个带有date的字典:2020年5月,lead_count和client_count为0,以便我的数据可视化工作正常
谢谢大家,感谢所有的帮助!
1条答案
按热度按时间qxgroojn1#
你不能追加到qs,除非你正在向数据库中添加数据。如果你愿意,你可以转换成一个列表,然后添加项目。
您可以创建一个生成器,在需要的地方输出其他值。
例如:
字符串