Symfony2 GenerateURL à un parcours complexe
Cela semble être la question la plus stupide jamais, mais je n'arrive pas à le comprendre. J'ai une page aux besoins de rediriger vers un parcours complexe et je n'arrive pas à générer l'URL. Redirection vers une simple route est assez facile:
return $this->redirect($this->generateUrl('testnumber'));
Cependant, je veux de la route: testnumber/1/question/4. Comment puis-je accomplir cette incroyablement simple tâche? La seule chose que j'ai trouvé dans la documentation et Google me permet d'ajouter des paramètres et pas seulement de créer un parcours complexe. Par exemple:
generateURL('testnumber', array('testid'=>1, 'question'=>4))
fait une URL du type /testnumber?testid=1&question=4, dont je ne veux pas.
Edit: Oui, j'ai déjà la route créée dans un fichier YML. J'ai simplement ne peut pas générer l'URL d'un lien.
return $this->redirect($this->generateUrl(???????????),true));
C'est mon itinéraire:
@Route("/testnumber/{testid}/question/{question}", name="testnumber")
La documentation Symfony ne montre comment générer une URL pour "testnumber/1", j'ai besoin de générer des "testnumber/1/question/4".
routing.yml
fichier avec un nom de testnumber
qui a testid
et question
comme paramètres? Regardez ici pour un exemple.Pouvez-vous s'il vous plaît montrer comment vous définissez votre itinéraire?
OriginalL'auteur rooter | 2012-09-28
Vous devez vous connecter pour publier un commentaire.
Pour
fonctionner comme vous le souhaitez, votre itinéraire doit ressembler (par exemple à l'aide d'annotations)
Si vous ne définissez pas de "testid" & "question" des paramètres de votre itinéraire, ils seront ajoutés à la chaîne de requête (en annexe à la fin de l'URL que d'OBTENIR des paramètres)
Trouver ici plus pertinents exemples.
Pouvez vous s'il vous plaît mettre à jour votre question avec votre définition de la route?
La route est exactement ce que vous avez entré. Je veux juste savoir comment générer qu'avec le generateurl méthode. @Route("/testnumber/{testid}/question/{question}", nom="testnumber")
Cela fonctionne bien > generateURL('testnumber', array('testid'=>1, 'question'=>4)) je l'ai juste testé.
Dans ce cas, il suffit de vider votre cache
OriginalL'auteur Ahmed Siouani