Fixed #17046 -- Added a check if the username passed to User.objects.create_user is empty or not. Thanks, kwadrat.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17628 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
40b248acc7
commit
fcaf8eae14
|
@ -149,6 +149,8 @@ class UserManager(models.Manager):
|
||||||
Creates and saves a User with the given username, email and password.
|
Creates and saves a User with the given username, email and password.
|
||||||
"""
|
"""
|
||||||
now = timezone.now()
|
now = timezone.now()
|
||||||
|
if not username:
|
||||||
|
raise ValueError('The given username must be set')
|
||||||
email = UserManager.normalize_email(email)
|
email = UserManager.normalize_email(email)
|
||||||
user = self.model(username=username, email=email,
|
user = self.model(username=username, email=email,
|
||||||
is_staff=False, is_active=True, is_superuser=False,
|
is_staff=False, is_active=True, is_superuser=False,
|
||||||
|
|
|
@ -91,3 +91,8 @@ class UserManagerTestCase(TestCase):
|
||||||
def test_create_user_email_domain_normalize_with_whitespace(self):
|
def test_create_user_email_domain_normalize_with_whitespace(self):
|
||||||
returned = UserManager.normalize_email('email\ with_whitespace@D.COM')
|
returned = UserManager.normalize_email('email\ with_whitespace@D.COM')
|
||||||
self.assertEquals(returned, 'email\ with_whitespace@d.com')
|
self.assertEquals(returned, 'email\ with_whitespace@d.com')
|
||||||
|
|
||||||
|
def test_empty_username(self):
|
||||||
|
self.assertRaisesMessage(ValueError,
|
||||||
|
'The given username must be set',
|
||||||
|
User.objects.create_user, username='')
|
||||||
|
|
|
@ -280,7 +280,9 @@ Manager functions
|
||||||
.. method:: models.UserManager.create_user(username, email=None, password=None)
|
.. method:: models.UserManager.create_user(username, email=None, password=None)
|
||||||
|
|
||||||
.. versionchanged:: 1.4
|
.. versionchanged:: 1.4
|
||||||
The ``email`` parameter was made optional.
|
The ``email`` parameter was made optional. The username
|
||||||
|
parameter is now checked for emptiness and raises a
|
||||||
|
:exc:`ValueError` in case of a negative result.
|
||||||
|
|
||||||
Creates, saves and returns a :class:`~django.contrib.auth.models.User`.
|
Creates, saves and returns a :class:`~django.contrib.auth.models.User`.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue