Menu
CoddyTech

Se connecter

Fait partie de la section Utilisateurs et comptes du Journey Django de Coddy. Leçon 2 sur 16.

Le site peut savoir qui est connecté, mais il n’a aucune page permettant de se connecter. Django fournit la vue LoginView. Une ligne dans le fichier urls.py du projet l’ajoute, ainsi que les pages de déconnexion et de gestion des mots de passe :

path("accounts/", include("django.contrib.auth.urls")),

/accounts/login/ existe maintenant et porte le nom login. La vue affiche registration/login.html avec un form contenant un champ username et un champ password. C’est à toi d’écrire ce modèle : un formulaire POST ordinaire. Django le recherche dans le dossier templates/ de chaque application ; son nom ne contient le nom d’aucune application, car la vue Django ne connaît pas tes applications.

Après une connexion réussie, la vue redirige vers LOGIN_REDIRECT_URL. Sa valeur par défaut, /accounts/profile/, n’existe pas ici ; définis-la donc dans settings.py.

challenge icon

Défi

Facile
  • Dans mysite/urls.py, incluez django.contrib.auth.urls sous accounts/.
  • Créez notes/templates/registration/login.html : ce fichier étend notes/base.html et affiche le form dans un formulaire POST avec un bouton Log in.
  • Après une connexion réussie, on arrive sur /.
  • Sous You are not signed in., ajoutez un lien Log in.

Cliquez sur Run, puis connectez-vous en tant que ada (mot de passe coddy-pass-123).

Essayez vous-même

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path("admin/", admin.site.urls),
    path("", include("notes.urls")),
]

Toutes les leçons de Utilisateurs et comptes

Entraînez-vous par vous-même : Playground Django