diff options
| author | Erik Romijn <eromijn@solidlinks.nl> | 2013-02-23 14:44:57 +0100 |
|---|---|---|
| committer | Erik Romijn <eromijn@solidlinks.nl> | 2013-02-23 14:44:57 +0100 |
| commit | 21f333bcefccc151d6439246f8203d609ab6ca79 (patch) | |
| tree | f7af85bcf2141f1b912310a0198b28178edb8e4a /django | |
| parent | c12891e8cd629cc16fc5d22e485b87ca3169df2c (diff) | |
Fix #17751: Added stripping of whitespace for IPAddressField/GenericIPAddressField
Diffstat (limited to 'django')
| -rw-r--r-- | django/core/validators.py | 2 | ||||
| -rw-r--r-- | django/forms/fields.py | 8 |
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 '' |
