summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Haslehurst <jacob@haslehurst.net>2014-08-07 16:06:44 +1000
committerTim Graham <timograham@gmail.com>2014-08-07 14:41:28 -0400
commit29585e9b6a0ce15dc0149c8424cd11c3e27ee295 (patch)
tree5f67f8f934e1db3432a2eeb127d5d75c2da0d374
parent4c56b6f820df969e270738ce6cc1cdce3f024334 (diff)
[1.7.x] Fixed #22982 -- Added GenericRelatedObjectManager.__str__. to prevent crash.
Thanks bendavis78 for the report.
-rw-r--r--django/contrib/contenttypes/fields.py3
-rw-r--r--tests/generic_relations_regress/tests.py4
2 files changed, 7 insertions, 0 deletions
diff --git a/django/contrib/contenttypes/fields.py b/django/contrib/contenttypes/fields.py
index 7c27d5960b..b70a947ddf 100644
--- a/django/contrib/contenttypes/fields.py
+++ b/django/contrib/contenttypes/fields.py
@@ -453,6 +453,9 @@ def create_generic_related_manager(superclass):
)
do_not_call_in_templates = True
+ def __str__(self):
+ return repr(self)
+
def get_queryset(self):
try:
return self.instance._prefetched_objects_cache[self.prefetch_cache_name]
diff --git a/tests/generic_relations_regress/tests.py b/tests/generic_relations_regress/tests.py
index 93eac5292b..2804530f84 100644
--- a/tests/generic_relations_regress/tests.py
+++ b/tests/generic_relations_regress/tests.py
@@ -260,3 +260,7 @@ class GenericRelationTests(TestCase):
# where the pre_delete signal should fire and prevent deletion.
with self.assertRaises(ProtectedError):
related.delete()
+
+ def test_ticket_22982(self):
+ place = Place.objects.create(name='My Place')
+ self.assertIn('GenericRelatedObjectManager', str(place.links))