Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

[1.5.X] Fixed #19161 - Added missing clean_password method in custom …

…user docs

Thanks DavidW for the report.

Backport of e8f6960 from master
  • Loading branch information...
commit 5b190733e902217536faf080ba58a9d5f958967e 1 parent 4f36ea4
@timgraham timgraham authored
Showing with 8 additions and 2 deletions.
  1. +8 −2 docs/topics/auth.txt
10 docs/topics/auth.txt
@@ -408,7 +408,7 @@ installation supports. The first entry in this list (that is,
``settings.PASSWORD_HASHERS[0]``) will be used to store passwords, and all the
other entries are valid hashers that can be used to check existing passwords.
This means that if you want to use a different algorithm, you'll need to modify
-:setting:`PASSWORD_HASHERS` to list your prefered algorithm first in the list.
+:setting:`PASSWORD_HASHERS` to list your preferred algorithm first in the list.
The default for :setting:`PASSWORD_HASHERS` is::
@@ -2283,13 +2283,19 @@ code would be required in the app's ```` file::
class UserChangeForm(forms.ModelForm):
"""A form for updateing users. Includes all the fields on
the user, but replaces the password field with admin's
- pasword hash display field.
+ password hash display field.
password = ReadOnlyPasswordHashField()
class Meta:
model = MyUser
+ def clean_password(self):
+ # Regardless of what the user provides, return the initial value.
+ # This is done here, rather than on the field, because the
+ # field does not have access to the initial value
+ return self.initial["password"]
class MyUserAdmin(UserAdmin):
# The forms to add and change user instances
Please sign in to comment.
Something went wrong with that request. Please try again.