[BUG] Sistema de Login Django/Python

Estou projetando (para fins de apredizado) a parte de Cadastro e Login do meu sistema, a parte de cadastro aparentemente está tudo bem, o problema é com o Login. Criei Algumas mensagens para aparecer na tela como:

user@exemplo.com agora está Logado” ou “Erro ao efetuar Login.”

Obs: A mensagem fica no cabeçalho do site.

O problema é que sempre que clico no botão de Login depois de inserir as credenciais ele mostra “Erro ao efetuar Login”. Estou a horas tentando resolver este problema, alguém pode me dar uma força?

Irei mostrar dos meus arquivos views.py forms.py urls.py Caso alguém queira ver o repositório completo no meu github aqui está: Link do Repositório

views.py


def login(request):
    form = LoginForms()

    if request.method == 'POST':
        form = LoginForms(request.POST)

        if form.is_valid():
            email_login = form['email_login'].value()
            senha = form['senha'].value()

            usuario = auth.authenticate(
                request,
                email=email_login,
                password=senha
            )

            if usuario is not None:
                auth.login(request, usuario)
                messages.success(request, f"{email_login} agora está logado.")
                return redirect('index')
            else:
                messages.error(request, "Erro ao efetuar Login.")
                return redirect('login')

    return render(request, "usuarios/login.html", {"form": form})


def cadastro(request):
        form = CadastroForms()

        if request.method == 'POST':
            form = CadastroForms(request.POST)

        if form.is_valid():
             nome=form["nome_cadastro"].value()
             email_cadastro=form["email_cadastro"].value()

             if User.objects.filter(username=nome).exists() or User.objects.filter(email=email_cadastro).exists():
                  print('Email ou Nome já cadastrado no sistema')
                  messages.error(request, 'Email ou Nome já cadastrado no sistema')
                  return redirect('cadastro')
             
             senha = random.sample(range(10),6)
             # concatenar(mapear(tipo,valor))
             senha_aleatoria = ''.join(map(str, senha))
             
             usuario = User.objects.create_user(
                  username=nome,
                  email=email_cadastro,
                  password=senha_aleatoria
             )

             usuario.save()
             enviar_email(nome, email_cadastro, senha_aleatoria)
             messages.success(request,'Cadastro efetuado com sucesso.')
             return redirect('login')


        return render(request,"usuarios/cadastro.html", {"form": form})


forms.py

class LoginForms(forms.Form):

    email_login = forms.CharField(
        label="Email",
        required=True,
        max_length=100,
        widget=forms.TextInput(
            attrs={
                "class": "shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline mb-4",
                "placeholder": "nome@exemplo.com"
            }
        )
    )
    senha = forms.CharField(
        label="Senha",
        required=True,
        max_length=70,
        widget=forms.PasswordInput(
            attrs={
                "class": "shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline mb-4",
                "placeholder": "Sua Senha"
            }
        )
    )

class CadastroForms(forms.Form):

    nome_cadastro = forms.CharField(
        label="Seu nome completo",
        required=True,
        max_length=100,
        widget=forms.TextInput(
            attrs={
                "class": "shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline mb-4",
                "placeholder": "Ex: João Silva"
            }
        )
    )
    email_cadastro = forms.CharField(
        label="Seu Email",
        required=True,
        max_length=70,
        widget=forms.EmailInput(
            attrs={
                "class": "shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 leading-tight focus:outline-none focus:shadow-outline mb-4",
                "placeholder": "nome@exemplo.com"
            }
        )
    )

urls.py

from django.urls import path 
from usuarios.views import login, cadastro

#path('caminho/', funcao, name='nome_da_rota')

urlpatterns = [
    path('login', login, name='login'),
    path('cadastro',cadastro,name='cadastro')
]