Установочный модуль для Zend Form ViewScript decorator - PullRequest
1 голос
/ 29 февраля 2012

Я пытаюсь дать моей форме декоратор сценария вида следующим образом:

public function setupViewScript() { 
    //Work out the path based on the class name here
    //****

    //Set decorator
    $form_decorator->setViewScript($form_view_path);
    $this->setDecorators( array( array('ViewScript', array('viewScript' => $form_decorator->getViewScript()))));
}

Однако я не хочу использовать модуль по умолчанию;Я хочу загрузить определенный скрипт вида в зависимости от имени класса формы.Поскольку я могу использовать определенную форму в нескольких модулях, я хочу, чтобы все мои скрипты представления формы были в ./application/form/views/scripts/.

У меня проблемы с установкой модуля "форма ", вместо текущего модуля, однако.Кто-нибудь может дать представление?

Спасибо

Ответы [ 2 ]

3 голосов
/ 28 марта 2012

Я посмотрел код Zend и обнаружил, что вы можете установить модуль скрипта вида, как в следующем примере:

$this->setDecorators(array(
        array('ViewScript', array('viewScript' => '<viewscriptname>', 'viewModule' => '<modulename>')),
        'Form'
    ));

Это должно работать, я использую его и в своих проектах.

0 голосов
/ 29 февраля 2012

Вы пробовали это решение?

$request = Zend_Controller_Front::getInstance()->getRequest();
$request->setModuleName('form');

Я не проверял, но думаю, что это должно работать

...