From f05b854a5432ea18d37cf29d6598d85e4fd2898d Mon Sep 17 00:00:00 2001 From: Bert Constantin Date: Tue, 19 Oct 2010 18:55:30 +0200 Subject: [PATCH] make PolymorphicQuerySet.get_real_instances() an official part of the API --- polymorphic/query.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/polymorphic/query.py b/polymorphic/query.py index 97b00d4..e6a0acf 100644 --- a/polymorphic/query.py +++ b/polymorphic/query.py @@ -92,7 +92,7 @@ class PolymorphicQuerySet(QuerySet): self.polymorphic_disabled = not bool(kwargs.pop('polymorphic', False)) return super(PolymorphicQuerySet, self).extra(*args, **kwargs) - def _get_real_instances(self, base_result_objects): + def get_real_instances(self, base_result_objects): """ Polymorphic object loader @@ -100,6 +100,8 @@ class PolymorphicQuerySet(QuerySet): return [ o.get_real_instance() for o in base_result_objects ] + but more efficiently. + The list base_result_objects contains the objects from the executed base class query. The class of all of them is self.model (our base model). @@ -203,7 +205,7 @@ class PolymorphicQuerySet(QuerySet): reached_end = True break - real_results = self._get_real_instances(base_result_objects) + real_results = self.get_real_instances(base_result_objects) for o in real_results: yield o