summaryrefslogtreecommitdiff
path: root/django/db/models/fields
diff options
context:
space:
mode:
Diffstat (limited to 'django/db/models/fields')
-rw-r--r--django/db/models/fields/related.py7
1 files changed, 4 insertions, 3 deletions
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: