获取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 (将#修改为@)