- 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 :Si vous vous connectez à l'interface d'administration de votre projet Django,par défaut vous n'aurez que les modèles pour les groupes et les utilisateurs qui sont affichés.
00:00:10 :Pour afficher d'autres modèles, il va falloir les renseigner à l'intérieur du fichier admin.py,donc ce fichier ici, à l'intérieur dans ce cas-ci de mon application blog.
00:00:19 :Pour l'instant ce fichier est vide et c'est à l'intérieur de ce fichier que l'on va indiquerquel modèle on souhaite afficher pour notre application dans l'interface de Django.
00:00:27 :On va déjà importer notre modèle qui est à l'intérieur de la classe modèle,donc le modèle blog post. Je vais l'importer en faisant from blog.models import blog post.
00:00:37 :Ensuite on va utiliser cet import qui est automatiquement fait à l'intérieur du fichier admin.py.On a from django.contrib import admin. On va utiliser ce module admin
00:00:48 :et on va faire admin.site.register blog post.Cela va nous permettre de spécifier qu'on veut afficher ce modèle à l'intérieur de notre interface d'administration.Si je reviens ici et que j'actualise, vous allez voir qu'on a bien cette fois-ci notre application blogavec le modèle blog post qui est affiché. Si on clique ici sur blog post,
00:01:08 :on voit bien les différents articles de blog qui sont affichés sur cette page.C'est la première façon de faire. On peut également passer par une classe.
00:01:16 :Vous allez voir que pour l'instant ça ne change pas grand-chose,mais par la suite on va voir qu'on va pouvoir beaucoup plus personnaliser l'interface d'administrationen passant par une classe plutôt qu'en passant uniquement par cette fonction register.
00:01:28 :Ce qu'on va faire à la place, c'est qu'on va faire une classe qu'on va appeler blog post admin.Ce n'est pas obligatoire d'avoir le même nom dans votre classe d'admin que le nom du modèle.
00:01:38 :Ici on pourrait très bien mettre par exemple PatrickAdmin, ça marcherait de la même façon.Pour que ce soit quand même assez explicite, je vais mettre blog post admin.
00:01:46 :On va hériter ici de admin.modelAdmin.Pour l'instant, je ne vais rien mettre à l'intérieur de cette classe.On va mettre juste un passe pour ne pas qu'on ait d'erreur.
00:01:54 :On va utiliser un décorateur pour indiquer quel modèle on souhaite relier à cette classe.On va dire admin.register et on va passer la classe blog post.
00:02:04 :Attention, cette fois-ci ce n'est pas admin.site.register comme on avait précédemment.Quand on fait un register comme ceci, il faut passer par admin.site.registeret passer notre blog post.
00:02:16 :Dans ce cas-ci, avec le décorateur, c'est juste admin.register.Vous ne mettez pas le site ici.Pour l'instant, ça ne change pas grand-chose.Vous allez voir qu'on va revenir dans notre interface d'administrationet on aura toujours notre application blog avec les blog posts qui sont accessibles.
00:02:30 :Également, si je reviens dans home, on voit bien notre application iciaprès l'application authentication and authorization.Ça, c'est la deuxième façon de faire.L'avantage ici, c'est qu'on va avoir une classeet dans cette classe, on va pouvoir spécifier beaucoup plus d'optionsque ce qu'on avait de disponible en passant par la fonction admin.site.register.
00:02:48 :Également, avant de terminer cette partie, vous voyez que pour l'instant,on a le modèle qui est affiché avec le nom de la classe en minuscules,donc blog post comme ceci.
00:02:56 :Et si on va voir les articles de blog,on a juste l'identifiant des articles avec, là encore, le nom de la classe.Pour modifier cet affichage, on va pouvoir modifier notre modèle.
00:03:06 :Pour ça, je reviens dans les modèles.La première chose qu'on peut spécifier, c'est une méthode string,donc cette fameuse méthode avec les tirées du bas avant et aprèsqui va nous permettre de changer la représentation en chaîne de caractèrede notre modèle.
00:03:18 :Dans ce cas-ci, on pourrait retourner une chaîne de caractère.Si je retourne bonjour, ça va afficher la même chaîne de caractèrepour tous mes articles de blog.
00:03:25 :Là, dans ce cas-ci, on a bonjour qui s'affiche à la place de blog post objectet l'identifiant du blog post.Mais bien entendu, ce qui va être intéressant ici,c'est de retourner quelque chose qui est spécifique à nos instances.
00:03:36 :Par exemple, on peut retourner self.titleet comme ça, on aura le titre de chaque article de blogqui sera affiché à la place.C'est déjà beaucoup plus explicite.
00:03:44 :On peut également changer le texte qui est affiché.Pour l'instant, comme je vous le disais, c'est vraiment le nom de la classequi est utilisé.
00:03:50 :On peut revenir à l'intérieur de notre modèleet on va faire une classe à l'intérieur de la classeet cette classe, ça va être une classe méta.
00:03:56 :Ici, on va indiquer verbose nameet on peut indiquer n'importe quelle chaîne de caractère.Dans ce cas-ci, je vais mettre article.Remarquez bien que je mets le nom au singulier.
00:04:05 :Automatiquement, Django va faire le plurielen rajoutant un S là où c'est nécessaire.Là, je mets article au singulierdans cette classe méta avec l'attribut verbose nameet si je reviens dans l'interface d'administration,je vais revenir au niveau de homeet là, vous voyez qu'on a bien articleavec un S qui est affiché
00:04:23 :et si je clique sur article, là, on a bienle mot article sans S cette fois-ciqui est affiché.Il correspond bien à ce que j'avais indiquéà l'intérieur de verbose name ici.
00:04:32 :On a bien tous nos articles qui sont affichésavec le titre qui est utilisépour la représentation en chaîne de caractère.Voilà comment afficher un modèleà l'intérieur de l'interface d'administration,comment également changer le titrequi est affiché ici et le titre qui est affichépour chaque instance de nos articles de blog.
00:04:49 :Pour chaque modèle que vous souhaitezafficher à l'intérieur de votre interfaced'administration, il faudrale renseigner à l'intérieur de ce fichieradmin.py, soit en passant
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.