summaryrefslogtreecommitdiff
path: root/django/contrib/postgres/forms
diff options
context:
space:
mode:
Diffstat (limited to 'django/contrib/postgres/forms')
-rw-r--r--django/contrib/postgres/forms/ranges.py22
1 files changed, 18 insertions, 4 deletions
diff --git a/django/contrib/postgres/forms/ranges.py b/django/contrib/postgres/forms/ranges.py
index 5f2b2434a3..c36bec8479 100644
--- a/django/contrib/postgres/forms/ranges.py
+++ b/django/contrib/postgres/forms/ranges.py
@@ -1,13 +1,16 @@
+import warnings
+
from psycopg2.extras import DateRange, DateTimeTZRange, NumericRange
from django import forms
from django.core import exceptions
from django.forms.widgets import MultiWidget
+from django.utils.deprecation import RemovedInDjango31Warning
from django.utils.translation import gettext_lazy as _
__all__ = [
- 'BaseRangeField', 'IntegerRangeField', 'FloatRangeField',
- 'DateTimeRangeField', 'DateRangeField', 'RangeWidget',
+ 'BaseRangeField', 'IntegerRangeField', 'DecimalRangeField',
+ 'DateTimeRangeField', 'DateRangeField', 'FloatRangeField', 'RangeWidget',
]
@@ -66,12 +69,23 @@ class IntegerRangeField(BaseRangeField):
range_type = NumericRange
-class FloatRangeField(BaseRangeField):
+class DecimalRangeField(BaseRangeField):
default_error_messages = {'invalid': _('Enter two numbers.')}
- base_field = forms.FloatField
+ base_field = forms.DecimalField
range_type = NumericRange
+class FloatRangeField(DecimalRangeField):
+ base_field = forms.FloatField
+
+ def __init__(self, **kwargs):
+ warnings.warn(
+ 'FloatRangeField is deprecated in favor of DecimalRangeField.',
+ RemovedInDjango31Warning, stacklevel=2,
+ )
+ super().__init__(**kwargs)
+
+
class DateTimeRangeField(BaseRangeField):
default_error_messages = {'invalid': _('Enter two valid date/times.')}
base_field = forms.DateTimeField