From f06a02a3d0cf38a1deab06aaf51c8d6f36c0fd4a Mon Sep 17 00:00:00 2001 From: gtors Date: Wed, 30 Jan 2019 14:36:21 +0300 Subject: [PATCH] Issue #373 : Fix bug with get_real_instances on empty base_result_objects --- polymorphic/query.py | 2 +- polymorphic/tests/test_orm.py | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/polymorphic/query.py b/polymorphic/query.py index 3d9d28c..39b4c46 100644 --- a/polymorphic/query.py +++ b/polymorphic/query.py @@ -474,7 +474,7 @@ class PolymorphicQuerySet(QuerySet): :rtype: PolymorphicQuerySet """ "same as _get_real_instances, but make sure that __repr__ for ShowField... creates correct output" - if not base_result_objects: + if base_result_objects is None: base_result_objects = self olist = self._get_real_instances(base_result_objects) if not self.model.polymorphic_query_multiline_output: diff --git a/polymorphic/tests/test_orm.py b/polymorphic/tests/test_orm.py index fa08165..557e370 100644 --- a/polymorphic/tests/test_orm.py +++ b/polymorphic/tests/test_orm.py @@ -332,6 +332,14 @@ class PolymorphicTests(TransactionTestCase): transform=lambda o: o.__class__, ) + # from empty list + objects = Model2A.objects.get_real_instances([]) + self.assertQuerysetEqual( + objects, + [], + transform=lambda o: o.__class__, + ) + def test_translate_polymorphic_q_object(self): self.create_model2abcd()