diff --git a/dj_rest_auth/serializers.py b/dj_rest_auth/serializers.py index f05d143..16ebebc 100644 --- a/dj_rest_auth/serializers.py +++ b/dj_rest_auth/serializers.py @@ -208,9 +208,6 @@ class PasswordResetConfirmSerializer(serializers.Serializer): def validate(self, attrs): self._errors = {} - if not default_token_generator.check_token(self.user, attrs['token']): - raise ValidationError({'token': ['Invalid value']}) - # Decode the uidb64 to uid to get User object try: uid = force_text(uid_decoder(attrs['uid'])) @@ -218,6 +215,9 @@ class PasswordResetConfirmSerializer(serializers.Serializer): except (TypeError, ValueError, OverflowError, UserModel.DoesNotExist): raise ValidationError({'uid': ['Invalid value']}) + if not default_token_generator.check_token(self.user, attrs['token']): + raise ValidationError({'token': ['Invalid value']}) + self.custom_validation(attrs) # Construct SetPasswordForm instance self.set_password_form = self.set_password_form_class(