Scaffolding Django : création d'interfaces d'administration en quelques secondes

Le scaffolding est une fonctionnalité proposée par certains frameworks de développement, permettant de créer des interfaces d'administration en prenant en charge les fastidieuses interfaces de CRUD : création, lecture, mise à jour et suppression. Django possède une fonctionnalité de scaffolding très puissante.

Les CRUDs, c'est chiant.

Quoi de plus rébarbatif que de développer des centaines de fois le même genre de fonctionnalité permettant de mettre à jour les données d'une application. Des formulaires pour créer des choses, les modifier, etc. Des tableaux pour visualiser des listes. Bref, rien de bien folichon.

Depuis très longtemps, les gens ont cherché à écrire des briques génériques permettant de prendre en charge ces fonctionnalités, sans avoir à réinventer la poudre à chaque projet. C'est là qu'intervient le fameux scaffolding.

Scaffolding Django : simple mais puissant et très paramétrable

Avec Django, vous obtiendrez une interface d'administration en deux temps trois mouvements.

Mais vous pourrez aussi, si vous le souhaitez et en avez besoin, paramétrer, surcharger les comportements de base pour en faire de véritables back-offices pour vos applications.

Back-office ? Un back-office (généralement abrégé en BO), contrairement au front-office, est une partie de votre projet à laquelle les utilisateurs finaux n'ont pas accès. C'est une partie d'application, voire une application à part entière, qui permet aux administrateur du système d'en gérer le paramétrage et les mises à jour de contenu.

Tutoriel scaffolding : le programme

  1. Mise en œuvre du scaffolding avec Django : paramétrage de base – Vous allez apprendre sur cette page à mettre en œuvre une interface d'administration simple pour votre projet Django en quelques secondes, grâce aux fonctionnalités de scaffolding du framework.
  2. Paramétrage avancé de l'interface d'administration (scaffolding) – Nous allons voir sur cette page comment personnaliser notre interface d'administration grâce à un paramétrage « avancé » des fonctionnalités de scaffolding de Django.

Testez vos connaissances avant d'aller plus loin

Qu'est-ce qu'un BO ?
  • C'est l'équivalent de ce que l'on appelle parfois une « interface d'administration ».
  • C'est un bulletin officiel traitant de Django.
  • C'est forcément une application, au sens de Django.
  • C'est un ensemble de pages permettant de consulter, créer, modifier, supprimer des objets définis par nos applications.
Pourquoi le scaffolding est-il un procédé intéressant ?
  • Cela permet aux développeur de gagner énormément de temps pour se concentrer sur des tâches à plus haute valeur ajoutée.
  • Cela permet aux développeur de gagner énormément de temps pour se concentrer sur le collage de post-it sur les fenêtres de leur entreprise.
  • Le scaffolding permet d'écrire moins de code, donc moins de bugs.
  • Ce n'est pas un procédé intéressant, car de toute façon on peut faire la même chose en le codant à la main.