Annoncer la table, c'est bien. La réserver, c'est mieux. Gorm a dessiné le formulaire (déjà dans le template) : il envoie en POST un nom et un nombre de personnes. À vous d'écrire le traitement.
Votre mission
Dans ReservationController::index() :
-
Acceptez aussi la méthode POST sur la route
app_reservation. -
À la soumission, vérifiez les données :
- le nom est obligatoire → sinon l'erreur « Indiquez votre nom. » ;
- de 1 à 12 aventuriers → sinon « Le nombre d'aventuriers doit être entre 1 et 12. ».
En cas d'erreur, réaffichez le formulaire (valeurs saisies conservées) avec le code 422.
-
Si tout est bon, ajoutez le message flash
success« Table réservée pour Gimli (3 aventuriers) ! » (avec le nom et le nombre saisis), puis redirigez vers la page de réservation.
Le template attend les variables personnes, nom et erreur (ou null).
Pourquoi rediriger ?
C'est le motif POST → redirection → GET : sans lui, un aventurier qui actualise la page renverrait le formulaire… et réserverait deux fois. Le message flash, stocké en session, survit à la redirection puis disparaît.