- 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:08 :Donc je me répète beaucoup mais c'est vraiment un sujet très important.Alors dans l'ordre des choses, vous allez déjà créer vos modèles dans le fichier models.py.
00:00:17 :Vous allez ensuite utiliser la commande make migrations pour créer les fichiers dans le dossier migrations.Donc les fichiers qui vont être en quelque sorte l'historique de toutes les modifications que vous allez faire sur vos modèles.
00:00:29 :Donc à chaque fois que vous changez quelque chose et que vous faites un make migrations, ça va créer un nouveau fichier.Et ensuite vous avez la commande migrate qui vous permet de répercuter ces changements dans votre base de données.
00:00:40 :Pour vous montrer qu'on peut recréer notre base de données entièrement, je vais la supprimer.Donc vous allez voir qu'on peut complètement supprimer la base de données et la recréer sans souci.
00:00:48 :Donc bien sûr on va perdre les données qui sont à l'intérieur.Donc ce n'est pas quelque chose à faire si vous avez des données très importantes.
00:00:54 :Pour l'instant on n'a rien à l'intérieur de cette base de données à part les valeurs par défaut pour l'administration etc.Donc je vais supprimer le fichier db.sqlite3 ici.
00:01:04 :Donc avec un clic droit delete, je supprime et je vais relancer mon serveur.Et vous allez voir en fait qu'en relançant le serveur, automatiquement ça va recréer ce fichier db.sqlite3.
00:01:14 :Vous remarquez qu'on a ici la phrase qui nous affiche qu'on a des migrations qui n'ont pas été appliquées.Et ici on en a 20.Si vous vous souvenez bien au tout début quand on crée un projet Django en général on en a 18.
00:01:26 :Donc 18 c'est les 18 migrations qui correspondent aux migrations pour l'interface d'administration.Dans ce cas-ci on en a 20 et c'est logique puisqu'on en a rajouté 2 à l'intérieur de migrations ici.
00:01:37 :Donc ça c'est vraiment parce que dans settings là encore on a bien mis notre application à l'intérieur des installed apps.Vous allez voir que si je supprime mon application ici et que je relance le serveur,donc je clique tout en haut à droite et je clique sur stop and rerun,
00:01:52 :là on est bien de nouveau avec 18 unapplied migrations.Donc il ne va pas prendre en compte les migrations qui sont dans des applications qui ne sont pas à l'intérieur de installed apps.
00:02:01 :Donc ça c'est déjà très important de mettre vos applications ici.Vous remarquez en même temps qu'on a bien notre fichier db.sqlite3 qui a été automatiquement créé.
00:02:09 :Mais si je retourne dans table plus, vous voyez que notre base de données ne contient plus aucune table.Donc il va falloir recréer ces tables avec les migrations qui sont actuellement dans notre application.
00:02:20 :Donc là on en a bien 20 cette fois-ci puisque j'ai rajouté mon application de blog.Et donc si je relance mon terminal ici et que j'applique mes migrations,donc là vous n'avez pas besoin de refaire un make migrations puisque les migrations sont déjà existantes.
00:02:33 :La seule chose que vous avez besoin de faire, qui est quelque chose que vous ferez si vous arrivez sur un projet qui existe déjà,vous n'avez pas besoin de recréer ces migrations, il faut juste les appliquer.
00:02:42 :Et donc c'est pour ça aussi que ces migrations, ces fichiers de migration,il faut bien penser à les inclure par exemple sur git avec votre projetpuisque c'est ça qui va permettre à d'autres personnes qui travaillent sur votre projetde recréer la même structure dans la base de données.
00:02:56 :Donc dans ce cas-ci je refais juste un migrate, j'appuie sur entrée pour valider.Je n'ai pas spécifié blog dans ce cas-ci puisque je veux faire les migrations sur l'entièreté de mon applicationet pas seulement sur l'application blog puisque je veux aussi appliquer les migrationsqui ont attrait à l'application d'autorisation, l'application d'admin, de content types, etc.
00:03:15 :qui sont toutes des applications de base que vous retrouvez ici dans la liste.Donc admin, auth, content type, sessions, etc.qui sont des applications de base avec Django qui sont déjà affichées dans ce paramètre install d'app ici.
00:03:27 :Donc si je reviens en table plus et que j'actualise,là on retrouve bien le schéma de notre base de données avec Django migrations par exemplemais aussi ma table pour les articles de blog, donc blog post ici,qui répertorie bien toutes les colonnes ici avec les champs que j'avais dans mon modèle,
00:03:44 :dans le fichier models.py.Donc voilà pour ce petit récapitulatif qui j'espère clarifie bien les choses,permet de mettre les points sur les i et de bien comprendredans quel cas vous avez besoin d'utiliser soit make migrations, soit migrate,ce que font ces deux commandes précisémentet pourquoi les fichiers de migration sont vraiment très importants.
00:04:02 :Il faut vraiment faire très attention à ces fichiers.Je vous parle de VQ, c'est des fichiers que vous versionnez,que vous mettez dans Git et que vous ne touchez pas ou en tout cas le moins possibleà part avec ces commandes make migrations et migrate.
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.