Django:通过ManyToManyField查询和分组查询集的最快方法

时间:2018-11-15 15:57:57

标签: django django-models

我有两个模型-产品和类别。我想在模板中按类别显示产品。

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

class Product(models.Model):
    name = models.CharField()
    categories = models.ManyToManyField(Category)

慢速解决方案

执行此操作的最基本方法是查询类别,然后在产品的模板循环中查看。

{% for category in object_list %}
     {% for product in category.products.all %}
         < html to display the product >
     {% endfor %}
{% endfor %}

这会导致数百个查询,而且速度很慢。

问题

有什么更好的方法来处理此查询,以使加载时间越短,查询越少?

0 个答案:

没有答案