Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Renderizar a una página con Symfony

17 de noviembre de 2015

Que tal, tengo una duda, ¿hay forma que cuando se usa render() para ir a una página PHP en Symfony la URL cambie? Es que uso render() porque redirect() no me sirve, pero el problema es que cuando uso render() la URL no me cambia cuando me envía a la otra página y quisiera que se cambie.

Gracias de antemano.


Respuestas

#1

La función render() sirve para que un trozo de la página sea generado por el controlador que le indicas, así que no te va a servir para redirigir a otra página. Si quieres redirigir a una URL pero el redirect() no te sirve, entonces seguramente debas utilizar el método forward() tal y como se explica en el capítulo sobre controladores del libro de Symfony.

@javiereguiluz

17 noviembre 2015, 19:28
#2

Ya probé el forward() y la URL sigue igual. Solo el redirect() me cambia la URL, pero con el redirect() no puedo usar la página PHP en vez de Twig. Solo con render() o forward() se puede. ¿Cómo podría hacer para que la URL cambie?

@piocarluis

17 noviembre 2015, 20:05
#3

Para poder ayudarte necesitaría saber con detalle lo que quieres hacer. Por ejemplo: ¿Cómo quieres redireccionar? (pinchando un enlace o botón, automáticamente desde el controlador, etc.) ¿Desde dónde y hacia dónde quieres renderizar? (hablas de una página PHP pero no se si está dentro de la aplicación Symfony o no)

@javiereguiluz

17 noviembre 2015, 20:11
#4

Claro, mi pantalla inicial es un login y tengo un home hecho en PHP, debido a que tenía que hacer algunas consultas y usé PHP en vez de Twig.

Pero para usar una página PHP en vez de una Twig es necesario usar el render() porque el redirect() no sirve. Pero cuando uso el render() me envía al home normal pero la URL sigue diciendo /login y no dice /home pero si yo la cambio manualmente para que diga /home no pasa nada pero yo quiero que me salga directamente /home.

@piocarluis

17 noviembre 2015, 20:48
#5

Como dices que la página inicial es un formulario de login y también dices que estás usando Symfony, supongo que estarás creando el login con Symfony. Si es así, tienes un montón de formas diferentes de redireccionar después de hacer login en Symfony. Además no importa que la página a la que quieres ir sea una página PHP. Simplemente indica la URL de esa página PHP y ya está.

@javiereguiluz

17 noviembre 2015, 21:41