- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Deviens membre Premium magic_button
Débloque cette session en devenant Membre Premium 🚀
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte personlive_helpToutes les questions
Gabriel Trouvé
21 mars 2023 - 21 mars 2023 à 19:40
checkConversation résolue
2 réponses
Modification de l'email sur la vue profile
Dernière question (de la soirée) promis ! lolDans la vue d'édition du profil, Dans la vidéo dans le if is_valid on ne touche pas à l'email. Et j'ai voulu quand …
Gabriel Trouvé
20 mars 2023 - 20 mars 2023 à 7:16
checkConversation résolue
2 réponses
django.contrib messages : stockage du message
Re,messages.add_message(request, messages.ERROR, "le mot de passe n'est pas valide.") Lorsqu'on utilise messages. J'ai cru comprendre qu'on pouvait ré-utiliser le message.Mais lorsqu'on utilise une boucle le message est effacé après ? …
00:00:00 :Dans cette partie, on va ajouter un message dans le cas où on rentre un mauvais mot de passepuisque pour l'instant, si je change les informations et que je mets un mot de passe qui n'est pas correct,on n'a aucune indication à part le fait que les changements n'ont pas été enregistrés,
00:00:12 :que le mot de passe n'était pas correct.Pour ça, on va gérer le cas de figure dans le else ici si l'authentification n'est pas valideet on va utiliser un module qui est prévu pour cela avec Django qui s'appelle messages.
00:00:22 :Je vais l'importer, il est à l'intérieur de django.contrib.messageset ce module va nous permettre d'ajouter des messages que l'on pourrait transporter d'une session à une autre.
00:00:32 :C'est pratique puisque comme ça, si vous avez des messages que vous souhaitez accumuler entre différentes vues,c'est possible.Dans notre cas, on va juste rester à l'intérieur de cette même vue et on va ajouter un simple message avec addMessageet la première chose à faire, c'est de passer la requête puisque justement, comme je vous disais,
00:00:48 :ces messages peuvent être transportés d'une requête à l'autre.Ils vont être associés à la session d'un utilisateur.En second, on va mettre le niveau du message.
00:00:57 :Là, c'est un peu comme le logging avec Python.On peut avoir info, debug, warning, etc.Dans notre cas, ça va être une erreur, donc on va mettre message.error
00:01:05 :et pour finir, on va mettre le contenu du message.Dans ce cas-ci, on va dire que le mot de passe n'est pas valide.Ensuite, ces messages, on va pouvoir les récupérer avec une variablequi va être disponible à l'intérieur de notre fichier HTML.
00:01:17 :On n'a même pas besoin de la passer dans le contexte ici.On va y avoir directement accès à l'intérieur du fichier HTML.Ce qu'on va faire, c'est la mettre après le formulaire iciet cette variable s'appelle tout simplement message,comme son nom, comme le nom du module.
00:01:31 :Ce qu'on va faire, c'est qu'on va déjà vérifier si on a quelque chose dans message.On va faire if message et cette variable ici, ça va être une listequi va contenir tous les messages d'erreur qu'on peut afficher.
00:01:41 :Si cette liste est vide et ne contient aucun message,on ne passera pas dans cette structure conditionnelle.Si par contre, on a des messages, on va les afficher.
00:01:48 :Pour ça, on va faire une liste non ordonnée en HTMLavec le tag ul, qui signifie un ordered list.Et à l'intérieur de ce ul, on va mettre des li,donc li, c'est des list items.
00:01:59 :Ce qu'on va faire, c'est boucler sur tous les messages.On va faire une boucle for et on va dire pour message,in messages, comme ceci.
00:02:05 :Et on n'oublie pas de mettre le end for pour finir cette boucle.Et à l'intérieur de cette boucle, on va faire un lipour afficher tout simplement chaque message d'erreur.
00:02:14 :Si on avait plusieurs messages comme ça,on bouclerait sur tous ces messages et on les afficherait les uns à la suite des autres.Et ça, on le fait uniquement, bien sûr,si on a des messages à l'intérieur de cette variable message.
00:02:23 :Donc normalement, c'est tout bon.Quand on a une erreur ici, on ajoute ce messagedans la variable messagequ'on affiche ensuite dans notre formulaire.Donc on va tester tout ça. On revient sur la boutique.
00:02:33 :J'actualise.Là, je vais déjà essayer de rentrer quelque chose de valide.Donc on va changer le nom de famille.On va mettre test. Je sauvegarde.
00:02:41 :Ça a fonctionné. On a bien le nom qui a été modifié.En passant, on pourrait rajouter un message,mais cette fois-ci, un message info.Par exemple, dans cette partie ici,on pourrait faire un add message et ajouter un message d'infopour dire que les informations ont bien été sauvegardées.
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.