zend framework - mac - Zend: ¿cómo desactivar el diseño en una acción determinada?
zend framework 1.12 12 download (3)
Tengo el siguiente controlador que, entre otros métodos, tiene este:
class EquipasController extends OccControllerAction {
public function listaAction()
{
$this->_helper->viewRenderer->setNoRender(true);
$this->_helper->layout->disableLayout();
}
}
Esperaba eso, cuando lo hago: http://www.example.com/equipas/lista/
el controlador se ejecutará y no veré la representación del diseño en mi ventana gráfica.
Sin embargo, ese no es el caso. Obtengo mi página de inicio renderizada.
Donde en ZF solemos decir: si una acción no existe, ¿debería aparecer una página de inicio?
Nota: Si, en lugar de: http://www.example.com/equipas/lista/
Lo hago, http://www.example.com/equipas/adasdas21232131/ eso no existe.
Obtengo la misma representación de la página de inicio.
¿Cuál podría ser la causa de tal comportamiento?
A Zend Newbie, MEM
Es posible que esto no responda a su pregunta directamente (que parece haber resuelto de todos modos), pero para deshabilitar el diseño y ofrecer una vista diferente para las solicitudes AJAX, considere usar el asistente de acción AjaxContext .
Agregue esto dentro de su controlador:
public function preDispatch(){
$this->_helper->layout()->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
}
en zf2
public function indexAction()
{
echo "json"
return $this->getResponse();
}