From 4fea46a030689d7ae774ee0217dbce28de5a1b29 Mon Sep 17 00:00:00 2001 From: Luke Plant Date: Wed, 6 Jun 2012 14:17:32 +0100 Subject: Fixed #18309 - Prefetch related does not work for fkey to multitable inherited model Thanks to milosu for the report, tests and initial patch. --- django/db/models/fields/related.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'django') diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py index c4f95a12d2..312a3822f6 100644 --- a/django/db/models/fields/related.py +++ b/django/db/models/fields/related.py @@ -329,10 +329,10 @@ class ReverseSingleRelatedObjectDescriptor(object): return QuerySet(self.field.rel.to).using(db) def get_prefetch_query_set(self, instances): - rel_obj_attr = attrgetter(self.field.rel.field_name) + other_field = self.field.rel.get_related_field() + rel_obj_attr = attrgetter(other_field.attname) instance_attr = attrgetter(self.field.attname) instances_dict = dict((instance_attr(inst), inst) for inst in instances) - other_field = self.field.rel.get_related_field() if other_field.rel: params = {'%s__pk__in' % self.field.rel.field_name: instances_dict.keys()} else: -- cgit v1.3