Использование actionHelper без возврата макета в выводе

Я вызываю помощника действий в одном из своих представлений, используя следующий код

echo $this->action('foo', 'bar');

FooAction в barController делает свое дело и выводит список страниц. Однако в списке снова есть макет на выходе, что сильно раздражает. Если я отключу макет в fooAction, это приведет к тому, что макет будет полностью отключен и на живой стороне.

Я обиделась. Я мог бы просто создать помощника представления, и есть много способов обойти это, но из любопытства мне было интересно, есть ли у кого-нибудь решение для этого.


person Philip Bennison    schedule 03.02.2010    source источник


Ответы (1)


Из Справочного руководства ZF по Action ViewHelper

API для помощника представления Action соответствует API большинства компонентов MVC, вызывающих действия контроллера: action($action, $controller, $module = null, array $params = array()). $action и $controller обязательны; если модуль не указан, предполагается модуль по умолчанию.

Измените свой контроллер, чтобы он принял параметр, который определяет, должно ли действие отключать макет. При использовании помощника действия передайте этот флаг управления.

Замечание: использование Action ViewHelper считается плохой практикой, поскольку он снова пройдет весь процесс отправки, и это замедлит ваше приложение. Если возможно, попробуйте получить доступ к модели напрямую.

person Gordon    schedule 03.02.2010