summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorBouke Haarsma <bouke@webatoom.nl>2013-10-15 17:24:35 +0200
committerTim Graham <timograham@gmail.com>2013-10-16 07:03:46 -0400
commit3918eeb9fde03a2ad1941bce022615fff8eae34d (patch)
treeb5a412d5be750107c9106d56e6d8cf479f65604c /django
parent763ac8b642bc21b5a05c0d540c962804b36454ec (diff)
Fixed #7551 -- Made GFK allow None init argument.
Thanks SamBull for the report.
Diffstat (limited to 'django')
-rw-r--r--django/contrib/contenttypes/generic.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/django/contrib/contenttypes/generic.py b/django/contrib/contenttypes/generic.py
index 51eed3f28b..241f497590 100644
--- a/django/contrib/contenttypes/generic.py
+++ b/django/contrib/contenttypes/generic.py
@@ -59,8 +59,12 @@ class GenericForeignKey(six.with_metaclass(RenameGenericForeignKeyMethods)):
"""
if self.name in kwargs:
value = kwargs.pop(self.name)
- kwargs[self.ct_field] = self.get_content_type(obj=value)
- kwargs[self.fk_field] = value._get_pk_val()
+ if value is not None:
+ kwargs[self.ct_field] = self.get_content_type(obj=value)
+ kwargs[self.fk_field] = value._get_pk_val()
+ else:
+ kwargs[self.ct_field] = None
+ kwargs[self.fk_field] = None
def get_content_type(self, obj=None, id=None, using=None):
if obj is not None: