Aller au contenu principal

Générer un CRUD

Workflow à suivre pour créer un nouveau CRUD admin ou métier.

Étapes

1. Définir le nom de la table et les clés FK en id_*
2. Créer la migration (soft deletes si données historiques)
3. Créer le modèle (casts, fillable, relations, SoftDeletes)
4. Créer les Form Requests (Store + Update)
5. Créer la Policy
6. Créer le Service
7. Créer le Controller
8. Créer les vues Blade (index + modale detail/add)
9. Ajouter les routes et entrées de menu
10. Écrire les tests (feature + unit)

Checklist CRUD

  • ✅ Autorisation pour chaque action (index, create, edit, delete)
  • ✅ Validation couvre toutes les entrées
  • ✅ Le service possède les mutations
  • ✅ Logs pour les changements sensibles
  • ✅ Les vues ne contiennent pas de logique métier
  • ✅ Soft delete si données historiques
  • ✅ Colonnes triables dans le tableau
  • ✅ Filtre et export CSV
  • ✅ Lignes cliquables → modale Détail

Exemple de migration

Schema::create('elevage_operateurs', function (Blueprint $table) {
$table->id();
$table->string('nom', 100);
$table->string('prenom', 100)->nullable();
$table->boolean('is_active')->default(true);
$table->unsignedBigInteger('id_service')->index();
$table->foreign('id_service')->references('id_service')->on('services');
$table->softDeletes();
$table->timestamps();
});