Login automático do Django após o registro do usuário (2.1.4) [duplicado]

Esta pergunta já tem uma resposta aqui:

Django: Como fazer login do usuário diretamente após o registro usando o CreateView @ genéri 1 resposta

O login automático de usuários recém-registrados não está funcionando no caso de uma exibição de registro "com base em classe"

Eu segui o exemplo deeste tutorial, que propõe a seguinte visualização de registro:

# myapp/views.py
from django.contrib.auth.forms import UserCreationForm
from django.urls import reverse_lazy
from django.views import generic

class SignUp(generic.CreateView):
    form_class = UserCreationForm
    success_url = reverse_lazy('login')
    template_name = 'signup.html'

Eu tentei incluir a solução baseada em classe deesta resposta, mas após o registro bem-sucedido de um novo usuário, o login não ocorre conforme o esperado. Existem mudanças no Django 2.1.4 que podem causar mau funcionamento?

myapp.users.views:

from django.views import generic
from django.contrib.auth import authenticate, login
from .forms import CustomUserCreationForm

class SignUp(generic.CreateView):
    form_class = CustomUserCreationForm
    success_url = '/index'
    template_name = 'signup.html'

    #auto login after register: 
    def form_valid(self, form):
        #save the new user first
        form.save()
        #get the username and password
        username = self.request.POST['username']
        password = self.request.POST['password1']
        #authenticate user then login
        user = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password1'],)
        login(self.request, user)
        return super(SignUp, self).form_valid(form)

questionAnswers(1)

yourAnswerToTheQuestion