Django - автоматический вход после регистрации с пользовательской моделью - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь автоматически войти в систему пользователя после регистрации, используя модуль Django, который реализует модальные формы и пользовательскую модель пользователя, которая использует электронную почту вместо имени пользователя. По какой-то причине при попытке аутентификации пользователя с помощью метода authenticate он возвращает None, а значением new_user является None. Может ли это быть из-за пользовательской модели пользователя или модуля, который я использую?

class SignUpView(BSModalCreateView):
    form_class = CustomUserCreationForm
    template_name = 'registration/signup.html'
    success_message = 'Success: Sign up succeeded. You can now Log in.'
    success_url = reverse_lazy('plan:plan')

    def form_valid(self, form):
        valid = super(SignUpView, self).form_valid(form)
        email, password = form.cleaned_data.get('email'), form.cleaned_data.get('password1')
        new_user = authenticate(email=email, password=password)
        login(self.request, new_user)
        return valid
...