Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #20357 -- Allow empty username field label in `Authentification…

…Form`.
  • Loading branch information...
commit 0732c8e8c6e156d4d9a4a1cc02d631fe41342bf8 1 parent 289afc3
Mark Huang authored charettes committed
View
2  django/contrib/auth/forms.py
@@ -171,7 +171,7 @@ def __init__(self, request=None, *args, **kwargs):
# Set the label for the "username" field.
UserModel = get_user_model()
self.username_field = UserModel._meta.get_field(UserModel.USERNAME_FIELD)
- if not self.fields['username'].label:
+ if self.fields['username'].label is None:
self.fields['username'].label = capfirst(self.username_field.verbose_name)
def clean(self):
View
21 django/contrib/auth/tests/test_forms.py
@@ -1,6 +1,8 @@
from __future__ import unicode_literals
import os
+
+from django.contrib.auth import get_user_model
from django.contrib.auth.models import User
from django.contrib.auth.forms import (UserCreationForm, AuthenticationForm,
PasswordChangeForm, SetPasswordForm, UserChangeForm, PasswordResetForm,
@@ -13,6 +15,7 @@
from django.utils.encoding import force_text
from django.utils._os import upath
from django.utils import translation
+from django.utils.text import capfirst
from django.utils.translation import ugettext as _
@@ -146,6 +149,24 @@ class CustomAuthenticationForm(AuthenticationForm):
form = CustomAuthenticationForm()
self.assertEqual(form['username'].label, "Name")
+ def test_username_field_label_not_set(self):
+
+ class CustomAuthenticationForm(AuthenticationForm):
+ username = CharField()
+
+ form = CustomAuthenticationForm()
+ UserModel = get_user_model()
+ username_field = UserModel._meta.get_field(UserModel.USERNAME_FIELD)
+ self.assertEqual(form.fields['username'].label, capfirst(username_field.verbose_name))
+
+ def test_username_field_label_empty_string(self):
+
+ class CustomAuthenticationForm(AuthenticationForm):
+ username = CharField(label='')
+
+ form = CustomAuthenticationForm()
+ self.assertEqual(form.fields['username'].label, "")
+
@skipIfCustomUser
@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
Please sign in to comment.
Something went wrong with that request. Please try again.