Django вход в систему без пароля
Я ищу способ, как войти в систему без пароля. При создании нового пользователя я заметил, что поле пароля имеет значение по умолчанию пустое, но не null. Как я могу сделать вход в систему с пустым паролем? Потому что не всем пользователям необходимо иметь установленный пароль.
models.py
class user(AbstractUser):
база данных:
| username | password |
| -------- | -------------- |
| A | |
| B | 123 |
views.py
user = authenticate(request, username='A', password='')
if user is not None:
login(request, user)
return redirect('index')
Создайте пользовательский бэкенд аутентификации из бэкенда по умолчанию (django.contrib.auth.backends.ModelBackend), который позволяет аутентификацию без пароля для пользователей, имеющих на это право, и установите AUTHENTICATION_BACKENDS для указания на этот класс.
Тогда ваши представления, или то, что вызывает authenticate(), будут работать из коробки.