我的模型看起来像这样:
date engagement (likes+comments)
2/5/2017 26
3/5/2017 29
我想得到每天的喜欢和评论的总和(注意我需要将datetimefield转换为datefield(可能使用Cast?):
PostMetric.annotate(engagement=Sum('likes') + Sum('comments')).annotate(date_only=Cast('created_at', DateField()))
我尝试使用:Cast,annotate,aggregate甚至rawsql和extra / select函数但没有成功。
我认为我需要添加基于此查询的聚合:
{{1}}
答案 0 :(得分:1)
如果您想模拟group_by查询,则可以使用.values
方法。
PostMetric.objects.values('created_at').annotate(engagement=Count('likes')+Count('comments')