【发布时间】:2012-02-23 01:07:50
【问题描述】:
如果我有以下型号:
class Fubar(models.Model):
name = models.CharField()
class Related(models.Model):
fubar = models.ForeignKey(Fubar)
如果我使用 .related_set 访问相关,我希望 ORM 会神奇地缓存父 Fubar 对象:
fubar = Fubar.objects.all()[0]
related = fubar.related_set.all()[0]
related.fubar
这会产生 3 个查询,而我希望它只会产生 2 个查询,因为在这种情况下,related.fubar 可以优化为我在其上调用 RelatedManager 的同一个对象。
【问题讨论】:
-
这已在 django 1.5 中修复 - docs.djangoproject.com/en/dev/releases/1.5-beta-1/…
标签: python django django-orm django-related-manager