Как изменить Zend Модули вне их папки? - PullRequest
0 голосов
/ 14 июля 2011

Я хотел бы изменить представление некоторых модулей Zend, не меняя их код. Моя идея состоит в том, чтобы изменить папку представления для модуля, используя конфигурацию (application.ini) и ничего больше.

Это возможно?

Как еще работать с модулями? Если вы не можете изменить их извне, то взаимозаменяемость не снижается?

1 Ответ

1 голос
/ 14 июля 2011

Полагаю, у вас есть:

YourModule
- controllers
- views
- alternativeViews

и вы хотите переключиться с views на alternativeViews?Вы можете использовать $view->addScriptPath('/path/to/app/views'); или добавить еще scriptPatch в свой application.ini.Тем не менее, я действительно не согласен с этим (слишком часто это занимает слишком много времени).

На мой взгляд, это решение контроллера.Таким образом, вы сохраняете представление для использования в вашем приложении (также может быть application.ini) и визуализируете другое представление в вашем контроллере:

public function indexAction()
{
    // decide which view to render, save name of view in $viewName
    $this->render($viewName);
}

, используя эту файловую структуру:

YourModule
- controllers
- views
    - scripts
        - yourController
            - index.phtml              // the default view
            - indexAlternative.phtml   // alternative view
...