Loading django/forms/fields.py +4 −0 Original line number Diff line number Diff line Loading @@ -486,6 +486,10 @@ class DateTimeField(BaseTemporalField): if isinstance(value, list): # Input comes from a SplitDateTimeWidget, for example. So, it's two # components: date and time. warnings.warn( 'Using SplitDateTimeWidget with DateTimeField is deprecated. ' 'Use SplitDateTimeField instead.', PendingDeprecationWarning, stacklevel=2) if len(value) != 2: raise ValidationError(self.error_messages['invalid'], code='invalid') if value[0] in self.empty_values and value[1] in self.empty_values: Loading docs/internals/deprecation.txt +3 −0 Original line number Diff line number Diff line Loading @@ -215,6 +215,9 @@ these changes. * ``django.forms.get_declared_fields`` will be removed. * The ability to use a ``SplitDateTimeWidget`` with ``DateTimeField`` will be removed. * The ``WSGIRequest.REQUEST`` property will be removed. * The class ``django.utils.datastructures.MergeDict`` will be removed. Loading docs/ref/forms/fields.txt +6 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,12 @@ For each field, we describe the default widget used if you don't specify See also :ref:`format localization <format-localization>`. .. deprecated:: 1.7 The ability to use :class:`SplitDateTimeWidget` with ``DateTimeField`` has been deprecated and will be removed in Django 1.9. Use :class:`SplitDateTimeField` instead. ``DecimalField`` ~~~~~~~~~~~~~~~~ Loading docs/releases/1.7.txt +7 −0 Original line number Diff line number Diff line Loading @@ -1063,3 +1063,10 @@ the arguments may have been evaluated at query time. The ``ADMIN_FOR`` feature, part of the admindocs, has been removed. You can remove the setting from your configuration at your convenience. ``SplitDateTimeWidget`` with ``DateTimeField`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``SplitDateTimeWidget`` support in :class:`~django.forms.DateTimeField` is deprecated, use ``SplitDateTimeWidget`` with :class:`~django.forms.SplitDateTimeField` instead. tests/forms_tests/tests/test_widgets.py +13 −8 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ from __future__ import unicode_literals import copy import datetime import warnings from django.contrib.admin.tests import AdminSeleniumWebDriverTestCase from django.core.files.uploadedfile import SimpleUploadedFile Loading Loading @@ -1092,6 +1093,8 @@ class WidgetTests(TestCase): class SplitDateForm(Form): field = DateTimeField(widget=SplitDateTimeWidget, required=False) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=PendingDeprecationWarning) form = SplitDateForm({'field': ''}) self.assertTrue(form.is_valid()) form = SplitDateForm({'field': ['', '']}) Loading @@ -1100,6 +1103,8 @@ class WidgetTests(TestCase): class SplitDateRequiredForm(Form): field = DateTimeField(widget=SplitDateTimeWidget, required=True) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=PendingDeprecationWarning) form = SplitDateRequiredForm({'field': ''}) self.assertFalse(form.is_valid()) form = SplitDateRequiredForm({'field': ['', '']}) Loading Loading
django/forms/fields.py +4 −0 Original line number Diff line number Diff line Loading @@ -486,6 +486,10 @@ class DateTimeField(BaseTemporalField): if isinstance(value, list): # Input comes from a SplitDateTimeWidget, for example. So, it's two # components: date and time. warnings.warn( 'Using SplitDateTimeWidget with DateTimeField is deprecated. ' 'Use SplitDateTimeField instead.', PendingDeprecationWarning, stacklevel=2) if len(value) != 2: raise ValidationError(self.error_messages['invalid'], code='invalid') if value[0] in self.empty_values and value[1] in self.empty_values: Loading
docs/internals/deprecation.txt +3 −0 Original line number Diff line number Diff line Loading @@ -215,6 +215,9 @@ these changes. * ``django.forms.get_declared_fields`` will be removed. * The ability to use a ``SplitDateTimeWidget`` with ``DateTimeField`` will be removed. * The ``WSGIRequest.REQUEST`` property will be removed. * The class ``django.utils.datastructures.MergeDict`` will be removed. Loading
docs/ref/forms/fields.txt +6 −0 Original line number Diff line number Diff line Loading @@ -458,6 +458,12 @@ For each field, we describe the default widget used if you don't specify See also :ref:`format localization <format-localization>`. .. deprecated:: 1.7 The ability to use :class:`SplitDateTimeWidget` with ``DateTimeField`` has been deprecated and will be removed in Django 1.9. Use :class:`SplitDateTimeField` instead. ``DecimalField`` ~~~~~~~~~~~~~~~~ Loading
docs/releases/1.7.txt +7 −0 Original line number Diff line number Diff line Loading @@ -1063,3 +1063,10 @@ the arguments may have been evaluated at query time. The ``ADMIN_FOR`` feature, part of the admindocs, has been removed. You can remove the setting from your configuration at your convenience. ``SplitDateTimeWidget`` with ``DateTimeField`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``SplitDateTimeWidget`` support in :class:`~django.forms.DateTimeField` is deprecated, use ``SplitDateTimeWidget`` with :class:`~django.forms.SplitDateTimeField` instead.
tests/forms_tests/tests/test_widgets.py +13 −8 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ from __future__ import unicode_literals import copy import datetime import warnings from django.contrib.admin.tests import AdminSeleniumWebDriverTestCase from django.core.files.uploadedfile import SimpleUploadedFile Loading Loading @@ -1092,6 +1093,8 @@ class WidgetTests(TestCase): class SplitDateForm(Form): field = DateTimeField(widget=SplitDateTimeWidget, required=False) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=PendingDeprecationWarning) form = SplitDateForm({'field': ''}) self.assertTrue(form.is_valid()) form = SplitDateForm({'field': ['', '']}) Loading @@ -1100,6 +1103,8 @@ class WidgetTests(TestCase): class SplitDateRequiredForm(Form): field = DateTimeField(widget=SplitDateTimeWidget, required=True) with warnings.catch_warnings(): warnings.filterwarnings("ignore", category=PendingDeprecationWarning) form = SplitDateRequiredForm({'field': ''}) self.assertFalse(form.is_valid()) form = SplitDateRequiredForm({'field': ['', '']}) Loading