Изменить путь скрипта представления модуля Zend Framework - PullRequest
4 голосов
/ 25 августа 2011

В настоящее время просмотрите скрипты, расположенные в APPLICATION_PATH . '/modules/my_module/views/scripts/'. Я хочу разместить скрипты в '/modules/my_module/views/' (удалить папку скриптов). Как этого добиться?

application.ini:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] =
resources.view.scriptPath.default = APPLICATION_PATH "/views"

Ответы [ 4 ]

6 голосов
/ 25 августа 2011

Я создал плагин:

class Application_Model_Controller_Plugin_AddScriptPath extends Zend_Controller_Plugin_Abstract
{
    public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) {
        $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view;
        $scriptPath = sprintf('%s/modules/%s/views',
                APPLICATION_PATH,
                $request->getModuleName());
        if (file_exists($scriptPath)) {
            $view->addScriptPath($scriptPath);
        }
    }
}

и зарегистрировал его в application.ini:

resources.frontController.plugins[] = "Application_Model_Controller_Plugin_AddScriptPath"
6 голосов
/ 25 августа 2011

Вы можете использовать метод представления setScriptPath(APPLICATION_PATH . '/modules/my_module/views') для замены пути к сценарию.

Вы также можете добавить свой путь к сценарию, не переопределяя предыдущий, используя addScriptPath(APPLICATION_PATH . '/modules/my_module/views').Я использую его для организации сценариев представления в разных папках.

Надеюсь, это поможет ...

0 голосов
/ 17 ноября 2014

если вы хотите изменить скрипт представления для любого действия
внутри действия вашего контроллера, добавьте:

$ this-> view-> addScriptPath (APPLICATION_PATH. 'Your / path');
$this-> Renderscript ( 'list.phtml');

0 голосов
/ 05 декабря 2013

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

resources.view.scriptPath = APPLICATION_PATH "/views/"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...