获取COUNTof一个多对一的关系,限制django中的queryset

问题描述

假设我有 3 个模型:

class Category(models.Model):
    name = models.CharField()

class Product(models.Model):
    category = models.ForeignKey(Category,related_name='categories')
    name = models.CharField()

class Feedback(models.Model):
    product = models.ForeignKey(Product,related_name='feedbacks')
    content = models.CharField()

我怎样才能获得每个类别的总反馈数,并获得它的 3 个第一批产品? 我想做这样的事情,但它不起作用:

Category.objects.prefetch_related(
    Prefetch('categories',queryset=Product.objects.all().annotate(
        feedback_count=Count('feedbacks')
    )[:3])
).annotate(
    product_count=Count('products'),total_feedback_count=Count('categories__feedback_count')
)

请帮帮我,谢谢^^

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...