I was working on my django project and everything seemed fine, until I simply wanted to login, and I found this error:
module 'django.contrib.messages.constants' has no attribute 'error'
The code that is responsible for this has not been touched for at least 2 months!
Here is the view:
from django.contrib.auth import authenticate
from django.conf.settings import *
from django.contrib import messages
# Connexion
def loginview(request):
if request.method == 'POST':
usr = request.POST.get('email_kw')
pwd = request.POST.get('pwd_kw')
user = authenticate(request, username=usr, password=pwd)
if user is not None:
login(request, user)
logger.info(f"Connexion de {request.user}")
return redirect("dashboard")
else:
messages.error(request, "Erreur: Nom d'utilisateur ou mot de passe incorrects, veuillez réessayer.") # this is the line that causes the problem
logger.error(f'Connexion de {request.user} echouee')
return render(request, 'core/login.html', {'page_title': 'Se connecter'})
if request.user.is_authenticated:
return redirect("dashboard")
return render(request, 'core/login.html', {'page_title': 'Se connecter'})