【发布时间】:2022-01-24 23:06:22
【问题描述】:
我的 Django 模型看起来像这样
class Customer(models.Model):
name = models.CharField(_("Name"))
class Feature(models.Model):
label = models.CharField(_("Name"))
class AddOn(models.Model):
customer = models.ForeignKey(Customer)
feature = models.ForeignKey(Feature)
鉴于我有一个 Customer 实例,例如
customer = Customer.objects.get(pk=1)
如何在一次查询中获取feature中的所有标签以避免N+1查询?
目前我所做的是:
[addon.feature.label for addon in self.addon_set.all()]
但我认为如果有很多插件,每个addon.feature 都会创建一个不是很优化的查询
【问题讨论】:
标签: django django-models