2013-07-02 2 views
0

Я хотел бы установить все действия, потому что, когда они возвращают класс ViewModel, по умолчанию этот параметр имеет значение TERMINAL = true.Zend Framework 2 действия без макета по умолчанию

Я хочу, чтобы у моего приложения было такое поведение, потому что 90% моих звонков - AJAX.

Заранее спасибо.

ответ

1

Проверьте создание и регистрацию альтернативных методов визуализации и реагирования. http://framework.zend.com/manual/2.0/en/modules/zend.view.quick-start.html#creating-and-registering-alternate-rendering-and-response-strategies.

namespace Application;

class Module 
{ 
    public function onBootstrap($e) 
    { 
     // Register a "render" event, at high priority (so it executes prior 
     // to the view attempting to render) 
     $app = $e->getApplication(); 
     $app->getEventManager()->attach('render', array($this, 'registerJsonStrategy'), 100); 
    } 

    public function registerJsonStrategy($e) 
    { 
     $app   = $e->getTarget(); 
     $locator  = $app->getServiceManager(); 
     $view   = $locator->get('Zend\View\View'); 
     $jsonStrategy = $locator->get('ViewJsonStrategy'); 

     // Attach strategy, which is a listener aggregate, at high priority 
     $view->getEventManager()->attach($jsonStrategy, 100); 
    } 
} 
Смежные вопросы