From 8bbdcc76e4a84cde92b8dbfd01581d098bd2187d Mon Sep 17 00:00:00 2001 From: Albert Wang Date: Sun, 29 Sep 2013 15:56:04 -0400 Subject: Fixed #19299 -- Fixed Nullification of Foreign Keys To CharFields Thanks tunixman for the report and Baptiste Mispelon and Shai Berger for reviews. --- django/db/models/fields/related.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'django/db/models/fields') diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py index f490066516..98ec36b656 100644 --- a/django/db/models/fields/related.py +++ b/django/db/models/fields/related.py @@ -1692,11 +1692,12 @@ class ForeignKey(ForeignObject): return field_default def get_db_prep_save(self, value, connection): - if value == '' or value is None: + if value is None or (value == '' and + (not self.related_field.empty_strings_allowed or + connection.features.interprets_empty_strings_as_nulls)): return None else: - return self.related_field.get_db_prep_save(value, - connection=connection) + return self.related_field.get_db_prep_save(value, connection=connection) def value_to_string(self, obj): if not obj: -- cgit v1.3