diff --git a/django/contrib/auth/forms.py b/django/contrib/auth/forms.py index 20d8922799..25d500962b 100644 --- a/django/contrib/auth/forms.py +++ b/django/contrib/auth/forms.py @@ -50,6 +50,9 @@ class ReadOnlyPasswordHashWidget(forms.Widget): context['summary'] = summary return context + def id_for_label(self, id_): + return None + class ReadOnlyPasswordHashField(forms.Field): widget = ReadOnlyPasswordHashWidget diff --git a/tests/auth_tests/test_forms.py b/tests/auth_tests/test_forms.py index 7a731bedc8..76b0eb7f3c 100644 --- a/tests/auth_tests/test_forms.py +++ b/tests/auth_tests/test_forms.py @@ -13,6 +13,7 @@ from django.contrib.sites.models import Site from django.core import mail from django.core.exceptions import ValidationError from django.core.mail import EmailMultiAlternatives +from django.forms import forms from django.forms.fields import CharField, Field, IntegerField from django.test import SimpleTestCase, TestCase, override_settings from django.utils import translation @@ -1025,6 +1026,18 @@ class ReadOnlyPasswordHashTest(SimpleTestCase): self.assertIs(field.disabled, True) self.assertFalse(field.has_changed('aaa', 'bbb')) + def test_label(self): + """ + ReadOnlyPasswordHashWidget doesn't contain a for attribute in the +