Django Неверные учетные данные: Объект пользователя check_password возвращает True, но функция authenticate возвращает False

У меня есть учетная запись пользователя в стандартной модели User в Django, где check_password() имеет значение True, но функция authenticate не возвращает пользователю объект с тем же паролем, и это происходит только для этого пользователя.

>>> from django.contrib.auth import authenticate
>>> from django.contrib.auth.models import User
>>> user = User.objects.get(username='user_1')
>>> user.check_password('1234')
// returns True
>>> authenticate(username='user_1', password='1234')
// returns False

и самое главное, это происходит только с этим объектом пользователя [имя пользователя: user_1] и не с любыми другими пользователями.

Я пробовал сбросить пароль с помощью set_password()

>>> user.set_password('1234')
>>> user.save()

Даже после сброса пароля, authenticate все еще не возвращает объект пользователя, и он сбрасывается для других пользователей должным образом.

Вопрос в том, почему это происходит для конкретного пользователя, а не для других пользователей.

Версия Django: 2.2

Ошибка, которую я сделал, заключается в том, что я не проверил поле is_active для этого объекта User, функция Django authenticate() ищет флаг is_active для объекта user, и если он False, то не возвращает объект User. Спасибо Iain

Вернуться на верх