Je le lien suivant dans mon modèle de projet:Django NoReverseMatch, pas un espace de noms enregistré
<li><a id="toggleLogin" href= "{% url 'login' %}" onclick="toggleLogin();" ><span>Login</span></a></li> <!-- login app
-->
le projet url est:
url(r'^login/',loginViews.user_login,name='login'),
l'application url est:
url(r'^$',views.user_login,name='user_login'),
et l'ap plicature vue est:
def user_login(request):
"""User at login view """
#
if request.method == 'POST':
# First get the username and password supplied
username = request.POST.get('username')
password = request.POST.get('password')
# Django's built-in authentication function:
user = authenticate(username=username, password=password)
# If we have a user
if user:
#Check it the account is active
if user.is_active:
# Log the user in.
login(request,user)
# Send the user back to some page.
# In this case their homepage.
return HttpResponseRedirect(reverse('index'))
else:
# If account is not active:
return HttpResponse("Your account is not active.")
else:
print("Someone tried to login and failed.")
print("They used username: {} and password: {}".format(username,password))
return HttpResponse("Invalid login details supplied.")
else:
#Nothing has been provided for username or password.
return render(request, 'login.html', {})
Mais une fois le lien cliqué, il renvoie l'erreur django suivante:
NoReverseMatch at /login/
'login_app' is not a registered namespace
doit être cet espace de noms enregistré dans le fichier URL du projet ainsi?