summaryrefslogtreecommitdiff
path: root/django/forms/models.py
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2016-09-06 17:41:54 -0400
committerTim Graham <timograham@gmail.com>2016-09-22 13:07:23 -0400
commit0b59ea3343ef6f035064cfae1608f54c5a3fd147 (patch)
tree81a3499027dd1397d6345a518c4b4cba8e5a1cdd /django/forms/models.py
parent190cd0e49f967d2ec0b6c50a63f0d58d13319611 (diff)
[1.10.x] Fixed #27186 -- Fixed model form default fallback for MultiWidget, FileInput, SplitDateTimeWidget, SelectDateWidget, and SplitArrayWidget.
Thanks Matt Westcott for the review. Backport of 3507d4e773aa9ff2336e7230ba231c4ba6eb568f from master
Diffstat (limited to 'django/forms/models.py')
-rw-r--r--django/forms/models.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/django/forms/models.py b/django/forms/models.py
index 1d54ea9676..ce93dead9e 100644
--- a/django/forms/models.py
+++ b/django/forms/models.py
@@ -54,8 +54,8 @@ def construct_instance(form, instance, fields=None, exclude=None):
continue
# Leave defaults for fields that aren't in POST data, except for
# checkbox inputs because they don't appear in POST data if not checked.
- if (f.has_default() and form.add_prefix(f.name) not in form.data and
- not getattr(form[f.name].field.widget, 'dont_use_model_field_default_for_empty_data', False)):
+ if (f.has_default() and
+ form[f.name].field.widget.value_omitted_from_data(form.data, form.files, form.add_prefix(f.name))):
continue
# Defer saving file-type fields until after the other fields, so a
# callable upload_to can use the values from other fields.