Fixed #11907 -- EmailField now runs strip() on its input. This means mistakenly including leading or trailing spaces will not cause a validation error, and clean() will remove those spaces. Thanks, krisneuharth, djansoft and SmileyChris
git-svn-id: http://code.djangoproject.com/svn/django/trunk@13997 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
edd767d261
commit
bf0947a474
|
@ -448,6 +448,10 @@ class EmailField(CharField):
|
||||||
}
|
}
|
||||||
default_validators = [validators.validate_email]
|
default_validators = [validators.validate_email]
|
||||||
|
|
||||||
|
def clean(self, value):
|
||||||
|
value = self.to_python(value).strip()
|
||||||
|
return super(EmailField, self).clean(value)
|
||||||
|
|
||||||
class FileField(Field):
|
class FileField(Field):
|
||||||
widget = ClearableFileInput
|
widget = ClearableFileInput
|
||||||
default_error_messages = {
|
default_error_messages = {
|
||||||
|
|
|
@ -430,6 +430,7 @@ class FieldsTests(TestCase):
|
||||||
self.assertEqual(u'', f.clean(''))
|
self.assertEqual(u'', f.clean(''))
|
||||||
self.assertEqual(u'', f.clean(None))
|
self.assertEqual(u'', f.clean(None))
|
||||||
self.assertEqual(u'person@example.com', f.clean('person@example.com'))
|
self.assertEqual(u'person@example.com', f.clean('person@example.com'))
|
||||||
|
self.assertEqual(u'example@example.com', f.clean(' example@example.com \t \t '))
|
||||||
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo')
|
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo')
|
||||||
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo@')
|
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo@')
|
||||||
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo@bar')
|
self.assertRaisesErrorWithMessage(ValidationError, "[u'Enter a valid e-mail address.']", f.clean, 'foo@bar')
|
||||||
|
|
Loading…
Reference in New Issue