Estoy intentando sin suerte encontrar un objeto "referente" para usar en mi controlador . Esperaba que hubiera un objeto similar al objeto de solicitud con parámetros que especificaban los argumentos _controller, _route y .Symfony2: ¿objeto de referencia similar al objeto de solicitud?
Lo que estoy tratando de hacer es un selector de acción lenguaje que redirige al usuario a la misma página en el nuevo idioma. Algo a lo largo de las líneas de :
public function switchLangAction($_locale)
{
$args = array();
$newLang = ($_locale == 'en') ? 'fr' : 'en';
// this is how I would have hoped to get a reference to the referrer request.
$referrer = $this->get('referrer');
$referrerRoute = $referrer->parameters->get('_route');
$args = $referrer->parameters->get('args'); // not sure how to get the route args out of the params either!
$args['_locale'] = $newLang;
$response = new RedirectResponse($this->generateUrl(
$referrerRoute,
$args
));
return $response;
}
También es posible que hay otra manera de hacer esto - Sé que en rieles existe la "redirect_to: de nuevo" método por ejemplo.
Cualquier ayuda sería muy apreciada.
Ok, gracias, Gilden! –
He aprendido algo más sobre Symfony2 después de escribir esta publicación. Se puede encontrar una mejor implementación [aquí] (http://stackoverflow.com/questions/7414243/symfony2-help-please-with-backward-uri-referrer-during-switching-locale/7423276#7423276). – gilden