Files
training.django/documentation/08-admin.md
Steve Kossouho e3ebf6bf4f Add documentation and source
Added documentation, source and extra files.
2025-07-02 20:26:50 +02:00

51 lines
2.0 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Django
author: Steve Kossouho
---
# L'interface d'administration de Django
----
## Présentation de l'interface d'administration
Ici, on navigue dans l'interface d'administration de Django.
Pour y accéder, il nous faut au moins un super-utilisateur dans notre base
de données, que l'on peut créer en ligne de commande :
```bash=
./manage.py migrate # s'assurer qu'on a tout à jour
./manage.py createsuperuser
```
----
## Configuration de l'administration
Lorsque l'on crée nos propres modèles, par défaut, on ne les voit pas s'afficher lorsque l'on navigue dans l'interface d'administration.
Heureusement, il est possible de configurer celle-ci afin qu'elle nous permette de gérer les données de nos modèles. (voir [documentation officielle](https://docs.djangoproject.com/fr/3.2/ref/contrib/admin/#modeladmin-objects))
----
La façon la plus simple d'enregistrer un modèle pour qu'il soit affiché est d'aller dans le fichier `admin.py` de notre application et d'y ajouter :
![Ajouter un modèle à l'admin](assets/images/admin-register-simple.png)
----
Cette méthode ajoute effectivement notre modèle à l'interface, mais l'affichage est plutôt rudimentaire. Il est possible de le personnaliser en s'y prenant autrement; on crée une classe de configuration de l'admin héritant de `admin.ModelAdmin`.
----
![Ajout d'un modèle à l'admin (recommandé)](assets/images/admin-register-recommended.png)
----
Vous pouvez personnaliser votre page de liste de modèle dans l'admin en écrivant votre classe `ModelAdmin` et en y ajoutant des attributs documentés sur [le site officiel Django](https://docs.djangoproject.com/en/dev/ref/contrib/admin/)
----
### Pour aller plus loin
La [documentation officielle de Django](https://docs.djangoproject.com/fr/3.2/ref/contrib/admin/actions/#admin-actions) montre comment définir ce que l'on appelle des actions, c'est-à-dire des fonctions qui peuvent être exécutées sur des instances de votre modèle via l'interface d'administration.