From f529d0cb5855db2dfc8d0d39850dbb4793bc75c2 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Sat, 28 May 2016 15:16:44 -0400 Subject: [1.10.x] Refs #24227 -- Fixed crash of ManyToManyField.value_from_object() on unsaved model instances. This behavior was removed in 67d984413c9540074e4fe6aa033081a35cf192bc but is needed to prevent a crash in formtools. Backport of a4c20ae85b40c49e28d1b2227208e4f00d7820df from master --- django/db/models/fields/related.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'django/db/models') diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py index 2de9ec8abd..8add38d6b0 100644 --- a/django/db/models/fields/related.py +++ b/django/db/models/fields/related.py @@ -1565,6 +1565,8 @@ class ManyToManyField(RelatedField): """ Return the value of this field in the given model instance. """ + if obj.pk is None: + return [] qs = getattr(obj, self.attname).all() if qs._result_cache is not None: return [item.pk for item in qs] -- cgit v1.3