Symfony 2 : Passer un objet d'une page à une autre

Résolu/Fermé
WildChild4Life Messages postés 42 Date d'inscription samedi 30 août 2008 Statut Membre Dernière intervention 2 novembre 2013 - 11 déc. 2012 à 13:15
theshadoo Messages postés 786 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 3 mai 2016 - 14 déc. 2012 à 18:21
Bonjour,

Je fais appel aux développeurs Symfony 2,

Donc voilà mon soucis,

J'ai un formulaire qui est généré à partir d'une entité créé, j'hydrate mon entité grâce aux données du POST, et j'aimerai savoir quel est le meilleur moyen pour envoyer l'objet créé d'une action à une autre en passant par le routeur approprié (pour le changement d'URL).

Ce qui m'a paru logique et qui ne marche pas c'est de faire un :
return $this->redirect($this->generateUrl('NOM_DU_ROUTEUR', array('object' => $monObjet));

Sauf qu'en essayant de récupérer l'objet en question dans l'action en question, il ne le prend pas en charge :s !

Merci d'avance.

A voir également:

2 réponses

theshadoo Messages postés 786 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 3 mai 2016 123
11 déc. 2012 à 14:09
c'est normal lorsque tu exécutes ton objet de redirection, ce qui se trouve dans ton objet post n'existe plus à cet instant, le seul moyen de le faire passer en continuant à effectuer une redirection est de passer par l'objet session de symfony.

Tu appelles le namespace des sessions
use Symfony\Component\HttpFoundation\Session\Session;

ensuite tun peux isntancier l'objet session et y inclure la variable que tu souhaites, et attention le router n'est pas la route à proprement parler.
Si non au besoin tu peux appeler une route via twig, cela peut être n'importe quel route correspondant à n'importe quel controller
2
WildChild4Life Messages postés 42 Date d'inscription samedi 30 août 2008 Statut Membre Dernière intervention 2 novembre 2013 2
11 déc. 2012 à 15:02
Merci theshadoo pour ta réponse,

Justement, je n'envoie pas le POST mais plutôt l'entité en entier, j'ai déjà essayé les sessions, ça marche nickel, je me demandais si il existait un moyen plus discret et sécurisé de faire passer les données.
0
theshadoo Messages postés 786 Date d'inscription samedi 26 mai 2007 Statut Membre Dernière intervention 3 mai 2016 123
Modifié par theshadoo le 14/12/2012 à 18:23
les sessions avec symfony sont tout ce que j'ai trouvé pour le moment que cela soit dans la doc ou autre, je vois qu'ils passent beaucoup d'objet via les sessions dès qu'il y en a besoin donc je pense que cela doit être ça en tout cas, je ne sais pas si il existe une autre façon de faire mais je pense que c'est la plus logique sur les objets de type request. Mais bien entendu utiliser l'objet session qu'offre symfony et non passer par les session classique de php, question sécurité
0