Hace muy poquito que trabajo con Symfony2, hasta ahora estaba trabajando con CMS creados por mí pero me he cansado de picar codigo tontamente y he decidido pasarme a las ventajas que aporta Symfony2.
Estoy rehaciendo un proyecto multilingüe en Symfony2 y estoy precisamente generando el menú de selección de idioma. La cuestión es que quiero que el usuario que entre pueda cambiar el idioma sin cambiar el contenido, si por ejemplo comparten en twitter o facebook el enlace de un contenido en la web, que pueda cambiar el idioma si lo necesita sin perder dicho contenido.
Por ejemplo:
Tengo ya un código que fuerza a que si se entra sin código de idioma, el servidor te redirecciona al idioma por defecto, en este caso inglés. Hasta ahora he conseguido generar los enlaces a distintos idiomas pero perdiendo la URL actual, es decir, mandando al cliente al "home" de la aplicación.
He encontrado algunos ejemplos por internet bastante similares pero todos me lanzan error de Symfony2.
Este sería el trocito de código que más he encontrado por internet a base de buscar.
href="{{ path(app.request.get('_route'), app.request.get('_route_params')|merge({'_locale': 'en'}))}}"
Leyendo un poco el código puedo intuir lo que realiza, pero al parecer falla en algo ya que Symfony2 me devuelve este error:
An exception has been thrown during the rendering of a template ("Unable to generate a URL for the named route "" as such route does not exist.") in "mybundle:Default:home.html.twig".
Al parecer, el vector app.request.get('_route') devuelve un valor vacío.
Añado también que en el controlador no paso ninguna variable a la plantilla.
A ver si alguien puede echarme una mano.
Gracias de antemano. Saludos.