2017-02-02 4 views
1

Существует контроллер: как определить ZF2 путь к контроллеру действий PHTML

module/ModuleName/src/ModuleName/Controller/SubFolder/ControllerNameController
С действием:
doSomethingAction()
В module.config.php:

'view_manager' => [ 
    'template_path_stack' => array(
     'ModuleName' => __DIR__ . '/../view', 
    ), 
] 

В одном из моих проектов ZF2 поиск .phtml файл как это:

view/module-name/sub-folder/controller-name/do-something.phtml
Это нормально для меня.

Но в другом проекте ZF2 выполните поиск файла .phtml следующим образом:

view/module-name/controller-name/do-something.phtml
Это не нормально для меня, потому что имя контроллера должно быть уникальным в модуле.

Где причина такого поведения?

Почему ZF2 игнорирует папку?

ответ

0

Возможно, это связано с двумя разными проектами, использующими разные версии ZF2. Я предполагаю, что проект, в который подпапка входит в шаблон шаблона представления, представляет собой версию ZF2 post 2.3.2, а проект, в который он не включен, является версией pre 2.3.2.

Вы посмотрите на запрос тянуть здесь можно: https://github.com/zendframework/zendframework/pull/5670

Если вы работаете предварительно 2.3.2 приложения Я хотел бы предложить вам необходимо обновить ZF2 зависимость до последней стабильной версии

Там было также некоторые критические изменения объединены в запросе тянуть, который я считаю, являются частью ZF3:

https://github.com/zendframework/zend-mvc/pull/139

Какой может быть полезен, если вы уже используете более позднюю версию т он каркас

+0

У моего композитора.json есть '' zendframework/zendframework ":" ~ 2.5 "' и был успешно обновлен. И: Zend \ Version \ Version :: VERSION = '2.5.1' – allapow

0

спасибо. В маршрутах отсутствовала переменная __NAMESPACE__.