- 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 ajouter un champ qui va nous permettre d'ajouter une image sur nos modèles d'articles.Donc je vais aller dans mon application Post, dans le fichier models.py et on va rajouter à la suite de tous les champs ici,
00:00:12 :un autre champ qu'on va appeler Thumbnails et qui va être égal à models.imageField.On va dire blank égal à true, donc ça veut dire qu'en fait ce champ ne sera pas obligatoire,on va pouvoir créer un article sans forcément ajouter d'image.
00:00:25 :Donc imageField, ça nous permet d'ajouter des images et vous allez voir que ces images vont être donc ce qu'on appelle des médiaset ce ne sera plus donc des images statiques. Ce ne sont plus des images que l'on ajoute par exemple dans le dossier statique ici,
00:00:37 :c'est des images qui vont pouvoir être modifiées, que l'on va ajouter directement nous avec l'interface de notre siteou l'interface d'administration de Django. Donc ce sont des images qui sont ajoutées par l'utilisateur.
00:00:48 :Donc la première chose que je vais faire, c'est dans mon terminal, appliquer ces migrations.Donc je vais ouvrir un nouveau terminal. Vous voyez en même temps ici que mon serveur a planté,
00:00:56 :puisque quand on ajoute un type imageField ici, donc un champ de type imageField, en fait on doit utiliser une bibliothèque qui s'appellePillow et c'est ce qu'il nous dit ici qu'il ne peut pas utiliser ce champ tant qu'on n'a pas installé cette bibliothèque Pillow.
00:01:09 :Donc je vais arrêter mon serveur ici en faisant CTRL C et on va installer Pillow.Donc assurez-vous d'avoir bien sourcé votre environnement virtuel et on va utiliser tout simplement pip install Pillow,donc comme ceci avec un P majuscule et ensuite I deux L O W. Je valide avec entrée.
00:01:26 :Ça va installer donc Pillow dans mon environnement virtuel et je vais ensuite pouvoir donc créer les migrations.Donc on va faire python manage.py makeMigrations. Je valide avec entrée.
00:01:36 :Ça, ça va créer le fichier de migration ici qui s'appelle donc blogPostThumbnail qui va créer ce champ,donc ce nouveau champ imageField dans notre base de données.
00:01:44 :Donc on va maintenant appliquer ces migrations avec python manage.py migrate. Je valide avec entrée.Et j'ai bien ces migrations qui ont été appliquées dans ma base de données.
00:01:54 :Donc maintenant, je vais pouvoir ajouter des images sur mes articles.Pour ça, je vais me rendre dans l'interface d'administration. Je valide avec entrée.Donc là, il faut que je relance bien entendu mon serveur avant ça.
00:02:04 :Donc python manage.py runServer. J'arrive sur mon interface d'administration.Je vais aller dans les articles, sur l'article ici.Et si on descend, on voit qu'on a une partie thumbnail ici dans laquelle on va pouvoir choisir un fichier à ajouter et associer à notre article de blog.
00:02:19 :Donc je vais cliquer ici sur choose file pour aller chercher une image.Donc je vais prendre cette image article Python dans mon dossier ici utilisateur.
00:02:27 :Je valide avec OK. Donc je clique sur open et ça va ajouter cette image.Donc on a bien le nom de notre fichier ici et je vais cliquer sur enregistrer pour enregistrer cette image.
00:02:36 :Si on revient dans notre architecture de dossier ici, on va voir que cette image est maintenant disponible ici.Donc Django a pris l'image qui était dans mon dossier d'utilisateur et il l'a copié à l'intérieur de mon dossier source.
00:02:49 :Si je retourne dans l'interface d'administration sur mon article, je vais pouvoir maintenant cliquer sur cette image.Donc vous voyez que c'est marqué actuellement. Donc on a cette image. On peut l'effacer ou on peut en choisir une nouvelle.
00:02:58 :Donc je peux cliquer sur cette image. Et le problème ici, c'est que cette image n'est pas disponible.On a un page not found. Donc là, on voit qu'on est à l'adresse 127.0.0.1.2.8000.
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.