From ce5f13ce5fd494c4b110ac0a218439ad5152caaf Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 31 Aug 2017 13:05:59 -0300 Subject: [PATCH] Adding method used to customize how to get the user into subclasses. --- password_reset/forms.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/password_reset/forms.py b/password_reset/forms.py index 8dc0ad1d..2192adbd 100644 --- a/password_reset/forms.py +++ b/password_reset/forms.py @@ -56,11 +56,17 @@ def clean_username_or_email(self): return username + def get_user(self, *args, **kwargs): + """ Method used to customize how to get the user into subclasses. + :rtype: User object + """ + return get_user_model()._default_manager.get(*args, **kwargs) + def get_user_by_username(self, username): key = 'username__%sexact' % ('' if self.case_sensitive else 'i') User = get_user_model() try: - user = User._default_manager.get(**{key: username}) + user = self.get_user(**{key: username}) except User.DoesNotExist: raise forms.ValidationError(self.error_messages['not_found'], code='not_found') @@ -71,7 +77,7 @@ def get_user_by_email(self, email): key = 'email__%sexact' % ('' if self.case_sensitive else 'i') User = get_user_model() try: - user = User._default_manager.get(**{key: email}) + user = self.get_user(**{key: email}) except User.DoesNotExist: raise forms.ValidationError(self.error_messages['not_found'], code='not_found') @@ -86,7 +92,7 @@ def f(field): filters = f('username') | f('email') User = get_user_model() try: - user = User._default_manager.get(filters) + user = self.get_user(filters) except User.DoesNotExist: raise forms.ValidationError(self.error_messages['not_found'], code='not_found')