Foros del Web » Programando para Internet » PHP » Zend »

¿Cómo obtener un mix de salida de varios Action?

Estas en el tema de ¿Cómo obtener un mix de salida de varios Action? en el foro de Zend en Foros del Web. Hola a los que andan dando vueltas por este apartado de forosdelweb! :) Bien, quiero hacer esto: lograr que cada Action me devuelva una pequeña ...
  #1 (permalink)  
Antiguo 26/05/2014, 16:25
 
Fecha de Ingreso: noviembre-2008
Mensajes: 288
Antigüedad: 15 años, 5 meses
Puntos: 2
¿Cómo obtener un mix de salida de varios Action?

Hola a los que andan dando vueltas por este apartado de forosdelweb! :)

Bien, quiero hacer esto:
lograr que cada Action me devuelva una pequeña parte de código html, relativa a su funcionalidad muy simple y escueta.
El objetivo, es que un Action más generico, sea el encargado de unificar distintas partesitas de html salido de distintos Action, para conformar la view final.

Lo ideal sería que el controller principal, obtenga los distintos códigos html invocando a los otros controller. Pero esto, creo que no es posible, al menos, en la versión que estoy manejando, que es la 1.
Se me ocurrió utilizar Zend_View(), que me permite renderear una view y así obtener su salida. El problema con esto, es que Zend_View no ejecuta su controller, solo corre su view; y aunque puedo obtener el html, es un html que ha salteado la lógica del controller, y corre riesgo de quedarme incompleto.

¿alguna idea de como puedo lograr lo que quiero?

( la idea final sería que un Action principal arme la view como si fuese un pequeño armador de piezas, invocando a otros controller para obtener los códigos de cada pequeño bloque, uno que cargue por ejemplo las imagenes de un objeto, otro me cargue el menú de acuerdo a los permisos del usuario, otro me cargue botones extras, etc . Con esto busco independizar pequeños bloques de código, que se juntarían según precise cada view principal.
Estos controllers podrían incluso referirse a otros modulos. )

¿es posible?
  #2 (permalink)  
Antiguo 26/05/2014, 19:07
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: ¿Cómo obtener un mix de salida de varios Action?

Puedes utilizar el helper ActionStack pero no es recomendable(esta mas que documentado el porque, haciendolo corto, overhead, cada llamada ejecuta un dispatch completo), el consenso es simplemente utilizar view helpers.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 26/05/2014, 21:27
 
Fecha de Ingreso: noviembre-2008
Mensajes: 288
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: ¿Cómo obtener un mix de salida de varios Action?

Hola Masterpuppet!! Si, sabía que los ActionStack no son recomendables. En realidad, tampoco lo es utilizar más de un controller, pues, la operatoria es similar, pues rearranca el Controller nuevamente.
Y lo de los ViewHelpers, si, supongo es la solución, aunque incluir lógica y modelos ahi, no sería conveniente.
Bueno, supongo abandonaré la idea de que cada Action se dedique a hacer una simple funcionalidad, y pondré todo en un único Action con una view que genere todo el html.
Gracias igual por tu respuesta Masterpuppet! Me sirve para saber, que lo que es, es lo que hay.

Supongo el Zend tiene una falencia en este aspecto. Quizás la versión 2 lo supla. no se.

Etiquetas: views
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:09.