bonjour/ bonsoir à tous,
je débute dans la programmation avec django, j'ai envie de refaire un site pourri en PHP avec ce framework.
Actuellement, j'ai fait une vue de connexion qui doit normalement rediriger vers une autre application. Cependant la redirection ne s'effectue, je reste sur la page de connexion, bien que l'utilisateur ait été connecté (je l'ai vérifié en visiant une autre page où j'affiche son nom s'il est connecté). J'ai aussi renseigné les variables LOGIN_REDIRECT_URL et LOGIN_URL dans le fichier settings, comme expliqué dans le tutoriel que je suis.
Fichier settings.py
1 2 3 4 5 | # url de redirection après authentifiation LOGIN_REDIRECT_URL = '/blog/' # url de connexion LOGIN_URL = '/connexion/' |
fichier views.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | def connexion(request): error = False if request.method == "POST": form = ConnexionForm(request.POST) if form.is_valid(): username = form.cleaned_data["username"] password = form.cleaned_data["password"] user = authenticate(username=username, password=password) # Nous vérifions si les données sont correctes if user: # Si l'objet renvoyé n'est pas None login(request, user) # nous connectons l'utilisateur redirect('blog:accueil') else: # sinon une erreur sera affichée error = True else: form = ConnexionForm() return render(request, 'connexion.html', locals()) |
fichiers urls.py
1 2 3 4 5 6 7 | urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^blog/', include('blog.urls')), url(r'^url/', include('mini_url.urls')), url(r'^connexion/', views.connexion, name='connexion'), url(r'^deconnexion/$', views.deconnexion, name='deconnexion'), ] |
N.B: j'ai placé mes fichiers forms et views dans le sous-dossier au nom du projet, ne sachant pas trop où les mettre.
Je remercie d'avance celui qui pourra répondre à mon problème