- 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 person00:00:00 :Dans cette partie, on va voir comment créer une vue qui va nous permettre cette fois-ci de modifier un article.Donc on va, à la place de CreateView, cette fois utiliser UpdateView.
00:00:10 :Donc je vais créer une classe que je vais appeler BlogPostUpdateet qui va hériter tout simplement de UpdateView.Donc ici je mets UpdateView et on va l'importer en haut de notre script.
00:00:21 :Donc ici, après CreateView, on met UpdateView.À l'intérieur de cette classe, on va mettre notre modèle, donc le modèle qui est BlogPost encore une fois.
00:00:30 :Et on va remplacer encore le template name pour cette fois-ci ne pas mettre Create mais Edit à la place.Donc je copie cette chaîne de caractère et je remplace le Create par Edit.
00:00:40 :Et on va aller dans notre fichier HTML, donc dans les templates ici.On va tout simplement copier et coller ce fichier.Donc je les électionne, je fais CMD-C ou CTRL-C sur Windows, CMD-V et on va changer le Create pour Editpuisque vous allez voir que ce fichier va être quasiment identique au fichier BlogPostCreate.
00:00:57 :Donc qu'est-ce que je vais mettre ici à la place de Ajouter ? Tout simplement Editer.On va changer le H1 également, on va mettre donc Editer l'article.
00:01:06 :Et ici on va mettre à la place de Créer, Editer, tout simplement sur le bouton.Tout le reste c'est pareil, on a notre formulaire qui va nous permettre d'afficher les informations que l'on souhaite modifier sur notre article.
00:01:16 :Donc là je vais juste modifier en plus les fields qu'on avait dans CreateView.Donc je vais récupérer ces fields et en plus de ce qu'on avait, donc le titre et le contenu,je vais rajouter Published ici puisqu'on va pouvoir modifier le statut de publication d'un article avec ce formulaire.
00:01:31 :Ensuite vous connaissez la chanson, on va aller dans le fichier urls.py de notre applicationet après Create ici, donc on va dupliquer cette ligne, on va mettre Edit.
00:01:40 :Donc Edit ici et là par contre on va devoir rajouter un élément, c'est le Slug de l'article.Donc le Slug qui va nous permettre de récupérer l'article que l'on souhaite éditer.
00:01:49 :Donc je vais mettre des crochets comme ceci, donc un symbole plus petit que et un symbole plus grand queet à l'intérieur on va mettre une chaîne de caractère, donc avec str et le Slug de l'article qu'on va donc récupérer dans notre url.
00:02:02 :A la place de BlogPostCreate, on va mettre BlogPostUpdate et on va le mettre donc ici dans notre chemin d'url.Et à la place de Create, je vais mettre Edit et on n'oublie pas la virgule ici pour séparer les chemins.
00:02:14 :Donc normalement on a tout ce qu'il faut ici, on a notre url qui relie à notre vue,donc la vue BlogPostUpdate qui va aller afficher ce fichier HTML et les différents champs ici qu'on a spécifié pour le formulaire.
00:02:25 :Donc je vais me rendre sur un article, on va prendre un article dans notre base de données,par exemple un cinquième article ici, donc je prends le Slug, je vais ici dans mon url mettre Edit, Slash et le Slug de l'article.
00:02:36 :Je valide avec Entrée et là vous voyez que j'ai bien ma vue qui s'affiche avec cette fois-ci édité l'articleet les champs qui sont automatiquement remplis en fonction des informations que j'avais dans ma base de données,donc les informations ici de mon article.
00:02:48 :Donc je vais pouvoir modifier cet article, dire que c'est un super article, modifier également le statut donc Publier ici.Là vous voyez en passant qu'il va chercher directement le verbose name qui est à l'intérieur de notre modèle,donc si je viens dans le fichier Models.py, on voit qu'on a bien ici Contenu, Publier et Titres qui sont utilisés pour les champs de mon formulaire.
00:03:07 :Donc comme je vous disais, ces verbose name ici vont être utilisés à différents endroits,que ce soit dans l'interface d'administration mais également comme ici dans un formulaire.
00:03:15 :Donc si je clique sur Éditer maintenant, je suis bien redirigé vers la vue d'accueil de mon blogpuisque dans mon modèle, ici dans le GetAbsoluteURL, je retourne la vue d'accueil de mon blog.
00:03:26 :Donc dans le cas d'un UpdateView, c'est ce même GetAbsoluteURL qui va être utilisé pour rediriger l'utilisateuraprès avoir modifié un élément de la base de données.
00:03:35 :Donc voilà, il n'y a que ça à faire, vous voyez que c'est assez similaire de la vue Create qu'on avait,il y a juste quelques petites choses qui ont changé comme le champ ici, le nom du templateet également les indications dans le template pour qu'on ait bien le mot Éditer à la place d'Ajouter,
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.