51 lines
2.0 KiB
Markdown
51 lines
2.0 KiB
Markdown
---
|
||
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 :
|
||
|
||

|
||
|
||
----
|
||
|
||
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`.
|
||
|
||
----
|
||
|
||

|
||
|
||
----
|
||
|
||
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.
|