Les commerçants appellent Margot pour commander une course, et Margot tape tout sur son téléphone. Elle voudrait que l'application enregistre la commande directement.
Votre mission
- Ajoutez au contrôleur une méthode
Store, branchée surPOST /livraisons. - Elle lit
clientetquartierdans le corps JSON de la requête. - Elle ajoute la livraison à la tournée, avec le numéro suivant (la tournée en compte 4 : la nouvelle est la 5), pas encore livrée.
- Elle répond 201 avec la nouvelle livraison en JSON.
L'onglet « Requêtes » a une commande toute prête à envoyer.
Rappel
ctx.Request().Input("client") lit un champ, qu'il vienne d'un corps JSON, d'un formulaire ou de la query string. Pour remplir une struct d'un coup, il y a aussi ctx.Request().Bind(&livraison).
En Go, une valeur qu'on ne donne pas prend sa valeur zéro : 0 pour un nombre, "" pour une chaîne, false pour un booléen. Livraison{Client: "…"} laisse donc Livree à false.
La tournée vit en mémoire : elle repart de ses quatre livraisons à chaque redémarrage de l'application. Au chapitre 4, elle passera dans une base de données.