summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
Diffstat (limited to 'django')
-rw-r--r--django/core/validators.py2
-rw-r--r--django/forms/fields.py8
2 files changed, 9 insertions, 1 deletions
diff --git a/django/core/validators.py b/django/core/validators.py
index 948ae28673..322741be39 100644
--- a/django/core/validators.py
+++ b/django/core/validators.py
@@ -129,7 +129,7 @@ validate_email = EmailValidator()
slug_re = re.compile(r'^[-a-zA-Z0-9_]+$')
validate_slug = RegexValidator(slug_re, _("Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens."), 'invalid')
-ipv4_re = re.compile(r'^(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}$')
+ipv4_re = re.compile(r'^\s*(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\s*$')
validate_ipv4_address = RegexValidator(ipv4_re, _('Enter a valid IPv4 address.'), 'invalid')
diff --git a/django/forms/fields.py b/django/forms/fields.py
index 621d3801f2..aa909a8aa5 100644
--- a/django/forms/fields.py
+++ b/django/forms/fields.py
@@ -1096,6 +1096,10 @@ class IPAddressField(CharField):
}
default_validators = [validators.validate_ipv4_address]
+ def clean(self, value):
+ value = self.to_python(value).strip()
+ return super(IPAddressField, self).clean(value)
+
class GenericIPAddressField(CharField):
default_error_messages = {}
@@ -1107,6 +1111,10 @@ class GenericIPAddressField(CharField):
self.default_error_messages['invalid'] = invalid_error_message
super(GenericIPAddressField, self).__init__(*args, **kwargs)
+ def clean(self, value):
+ value = self.to_python(value).strip()
+ return super(GenericIPAddressField, self).clean(value)
+
def to_python(self, value):
if value in validators.EMPTY_VALUES:
return ''