L’administration Django
Gérer les données avec le site d’administration
L’administration Django est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.
L’interface d’administration intégrée
Django fournit une puissante interface d’administration : une interface web générée automatiquement pour gérer vos données. C’est l’une des fonctionnalités les plus appréciées de Django.
# The admin gives you CRUD screens
# for your models with zero UI code
print('Django admin manages data out of the box')L’administration est déjà installée
L’interface d’administration se trouve dans django.contrib.admin, inclus par défaut dans INSTALLED_APPS, et est reliée au urls.py du projet.
# mysite/urls.py
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
print('admin/ is mapped to the admin site')Créer un superutilisateur
Pour vous connecter, vous avez besoin d’un compte d’administration. Créez-en un avec python manage.py createsuperuser, puis suivez les instructions.
# python manage.py createsuperuser
# Username: admin
# Email: admin@example.com
# Password: ********
print('createsuperuser makes an admin login')Se connecter
Démarrez le serveur et accédez à /admin/. Connectez-vous avec les identifiants de votre superutilisateur pour accéder au tableau de bord.
# python manage.py runserver
# Open http://127.0.0.1:8000/admin/
print('Visit /admin/ and log in')Enregistrer un modèle
Les modèles n’apparaissent pas dans l’interface d’administration tant que vous ne les avez pas enregistrés. Faites-le dans le admin.py de l’application avec admin.site.register().
# blog/admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
print('Post now appears in the admin')Gérer les données
Une fois les modèles enregistrés, vous disposez d’écrans CRUD complets : afficher toutes les lignes, en ajouter, les modifier et les supprimer, sans avoir à écrire le moindre formulaire.
# In the admin you can:
# - view a list of all Posts
# - add a new Post
# - edit or delete existing ones
print('Full CRUD with no extra code')Personnaliser avec ModelAdmin
Une classe ModelAdmin personnalise l’affichage d’un modèle. list_display choisit les colonnes affichées dans la vue en liste.
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
list_display = ('title', 'created', 'published')
admin.site.register(Post, PostAdmin)
print('list_display picks the columns')Recherche et filtres
Ajoutez search_fields pour afficher un champ de recherche et list_filter pour ajouter des filtres dans la barre latérale et parcourir de grands ensembles de données.
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
search_fields = ('title',)
list_filter = ('published',)
admin.site.register(Post, PostAdmin)
print('Search box and sidebar filters added')Le décorateur register
Le décorateur @admin.register() est une solution claire qui évite d’appeler séparément admin.site.register().
from django.contrib import admin
from .models import Post
@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
list_display = ('title',)
print('@admin.register is the decorator form')__str__ est important
Définissez __str__ sur votre modèle afin que l’interface d’administration affiche un libellé lisible plutôt que « Post object (1) ».
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=200)
def __str__(self):
return self.title
print('__str__ gives a readable admin label')Autorisations
L’interface d’administration respecte les autorisations des utilisateurs. Vous pouvez créer des utilisateurs membres du personnel avec des droits limités, afin que personne n’ait nécessairement un accès complet de superutilisateur.
# Staff users (is_staff=True) can access the admin
# Permissions control which models they can edit
print('Permissions limit admin access')Vérification rapide
Vérifiez vos connaissances sur l’interface d’administration.
Récapitulatif
Vous avez utilisé l’interface d’administration Django pour gérer les données.
- L’interface d’administration est intégrée et accessible à
/admin/ - Créez un compte avec
createsuperuser - Enregistrez les modèles dans
admin.pypour obtenir des écrans CRUD ModelAdminpersonnalise les colonnes, la recherche et les filtres- Définissez
__str__pour obtenir des libellés lisibles ; les autorisations limitent l’accès
Questions Fréquemment Posées
La leçon « L’administration Django » est-elle gratuite ?
Oui — le texte complet de « L’administration Django » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « L’administration Django » ?
Gérer les données avec le site d’administration Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Python Academy ?
Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « L’administration Django » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?
Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Projets et applications
- Modèles et migrations
- Vues et URL
- L’administration Django