Générer le sous-CRUD pivot¶
Objectif : produire un sous-CRUD dédié au pivot enrichi avec forge make:pivot-crud.
Ce que vous allez apprendre : quand une relation porte des attributs, Forge
fournit un générateur dédié, make:pivot-crud, distinct de make:crud. Il
affiche le code à coller (contrôleur, templates, routes) sans réécrire vos
fichiers (charte principe 9).
Module opt-in
Ce starter suppose forge-mvc-pivot installé. Module à SQL visible.
Pourquoi une commande dédiée ?¶
make:crud gère une entité simple. Dès qu'un pivot porte au moins un champ
requis ou non nullable, make:crud est bloqué par un garde-fou : il
faut make:pivot-crud, qui sait gérer les attributs de la relation.
Classes Forge utilisées¶
| Commande | Rôle dans ce starter | Référence |
|---|---|---|
forge make:pivot-crud |
Génère le sous-CRUD d'un pivot enrichi. | Pivot avancé |
Générer (mode aperçu)¶
Commencez toujours par un aperçu --dry-run : rien n'est écrit, tout est affiché.
La sortie montre le contrôleur, les templates et les routes à câbler pour le
sous-CRUD de l'association Article ↔ tags.
Générer (réel)¶
Les fichiers nouveaux sont créés ; les routes à ajouter dans mvc/routes.py
sont affichées (Forge ne réécrit jamais vos routes en silence).
Comprendre ce code¶
- Le générateur produit un sous-CRUD : lister les tags d'un article, en attacher,
modifier l'attribut, détacher : exactement les opérations de pivot. - Le code généré s'appuie sur
PivotAdvancedService, que vous manipulerez
directement au niveau intermédiaire. --dry-runest la bonne habitude : on lit avant d'écrire.
À retenir¶
make:pivot-crud <Source> <relation>génère le sous-CRUD d'un pivot enrichi.make:crudest bloqué pour les pivots à attributs requis/non nullables.--dry-runaffiche sans rien écrire.
Après ce starter¶
Le code est généré. Voyons le stockage : la table pivot en SQL.