- 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 vidéo on va voir comment modifier les modèles qu'on a créés puisqu'on arrive à un point dans ce projet où je me rendscompte qu'on a un peu mal pensé nos modèles. Alors c'est parfait puisque je vais pouvoir vous montrer comment on peut modifier des modèles
00:00:13 :existants. Vous allez voir c'est très facile. Donc le problème que j'ai identifié ici c'est qu'en fait on a un panier ici avec notre userqui est un champ de type one-to-one field. Alors il y a plusieurs façons d'aborder ce problème. On pourrait modifier ce champ ici pour
00:00:28 :faire en sorte qu'un utilisateur puisse avoir plusieurs paniers. Dans ce cas-ci comme on a un modèle one-to-one on ne peut avoir qu'un seulpanier pour un utilisateur spécifique. Et donc le problème vient de là c'est que vous voyez j'avais mis des champs order et order date
00:00:41 :sur ce panier et donc l'idée en fait au départ c'était de pouvoir afficher les différents paniers qui auraient été commandés par le passépar l'utilisateur. Le problème c'est que comme on a un seul panier ici disponible et bien ce panier on va devoir le réutiliser et donc on ne peut pas
00:01:17 :C'est-à-dire que quand la personne sur notre site va valider son panier, on va vider le panier des articles qui étaient dedans, on va passer ces articlesen commandé. Donc on va dire que cet article a été commandé et on va également rajouter donc ce champ pour dire quand est-ce qu'il a été commandé
00:02:21 :et on va pouvoir dans notre terminal faire l'émigration avec python manage.py make migration. Donc on crée l'émigration. Là vous voyez qu'on a bientrois éléments. Donc on a enlevé le champ ordered depuis cartes, on a enlevé ordered date et on a ajouté le field ordered date à ordered.
00:02:39 :Donc c'est très simple et on va pouvoir appliquer maintenant ces migrations avec manage.py migrate. Et voilà les migrations ont été appliquées.Donc voilà pour ces changements de modèles. Comme je vous dis c'est vraiment très simple. Tant que vous faites les migrations, il n'y a aucun problème.
00:03:00 :et bien c'est là encore grâce à ces migrations qu'on aura tout l'historique. En fait ce que va faire Django dans la base de données,si on regarde notre initial, alors là on avait le modèle product, on va ouvrir le order. Donc vous voyez que lui ce qu'il va faire,
00:03:12 :c'est créer le modèle order avec ordered ici et sans le champ. Et on va voir pour cartes, pareil il va créer ses champs.Donc il va d'abord créer les champs qu'on va par la suite supprimer. Mais ce n'est pas grave, il va les créer. Et ensuite ici dans cette
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.