繁体   English   中英

如何在 Django annotate() 中使用过滤器进行计数?

[英]How do I use filter for Count in Django annotate()?

所以我看到很多帖子都处理同样的问题,但大多数都过时了(Django 版本),我找不到任何有用的东西。 所以问题是,我试图在 Django 注释中使用过滤器进行计数。 下面是一个示例,我尝试了谷歌搜索后发现的三个差异。

all_posts = Post.objects.all().annotate(
    count_comments = Count('user_comment', validated=True), #1
    count_comments = Count('user_comment').filter(validated=True), #2
    count_comments = Count('user_comment', filter=Q(validated=True)), #3
)

如您所见,我正在尝试获取已验证的评论数量。 但显然它们都不起作用。 过滤器的正确使用方法是什么?

It helps

    all_posts = Post.objects.filter(validated = True).annotate(count_coments = Count('user_coment'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM