Bonjour,
Je fais une appli utilisant beaucoup d'Ajax.
J'ai un formulaire en plusieurs étapes et je passe d'une étape à l'autre en rechargeant le centre de ma page avec un Ajax.Updater.
Jusque là tout va bien. Mais arrivé à la 3ème étape de mon incription, j'aimerai remplir un panier avec des informations puis rediriger vers l'étape suivante.
Pour cela, je récupère mes champs sur la page, puis j'executé mon appel Ajax avec les valeurs récupérées et je les envoient pour remplir mon panier avec un controlleur. Les données passent bien dans le controleur et sont bien enregistrées, cependant, à la fin de mon appel et grâce à la directive onComplete de mon appel, je redirige vers l'étape suivante ou j'affiche le contenu de mon panier, or suprise ! Rails me dit que le panier est vide et m'affiche une belle erreur 500.
J'ai testé en découpant l'enregistrement des données en 2 parties : un bouton qui enregistre juste, et un bouton qui m'envoie sur la page suivante, et là ça marche nickel. Je pense que c'est donc définitivement un problème de session mais je ne vois pas comment le régler et il est inacceptable de demander à l'utilisateur de cliquer sur un bouton d'update puis sur un bouton "Suivant" (le but en utilisant Ajax étant de rendre la navigation la plus aisée possible)
Si quelqu'un à une solution ce serait sympa car il faudrait vraiment que je me débloque là.
Merci d'avance.
Partager