我目前在我的模块中进行了以下设置。
public function onBootstrap( EventInterface $e )
{
// You may not need to do this if you're doing it elsewhere in your
// application
$eventManager = $e->getApplication()->getEventManager();
$serviceManager = $e->getApplication()->getServiceManager();
$moduleRouteListener = new ModuleRouteListener();
$moduleRouteListener->attach( $eventManager );
//TODO think about moving this to somewhere more appropriate
$renderer = $serviceManager->get( 'Zend\View\Renderer\PhpRenderer' );
$renderer->headTitle( 'uDare' )->setSeparator( ' - ' );
}
有没有更好的方法来执行此操作或我应该附加的其他事件?
我问这个是因为我在尝试使用Doctrine2ORMModule时遇到了问题。
当我访问本地主机上的网页时,一切正常。但是当我跑步时
./vendor/bin/doctrine-module --verbose
命令行上的我收到错误说明以下
PHP Fatal error: Uncaught exception 'Zend\ServiceManager\Exception\ServiceNotFoundException'
with message 'Zend\ServiceManager\ServiceManager::get was unable to
fetch or create an instance for Zend\View\Renderer\PhpRenderer'
in /Library/WebServer/Documents/udare/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php:407
Stack trace:
#0 /Library/WebServer/Documents/udare/modules/Web/Module.php(56): Zend\ServiceManager\ServiceManager->get('Zend\View\Rende...')
答案 0 :(得分:2)
最近合并到zf2中,这改变了控制台请求的呈现方式。似乎这些更改可能已经破坏了DoctrineORMModule CLI。请在github上提出一个问题,很快就会解决。
答案 1 :(得分:1)
我有同样的问题
我注意到它是由我安装“ZendDeveloperTools”
的新模块引起的我从application.config.php文件中的模块加载中删除了它并修复了错误
答案 2 :(得分:0)
这个好地方可能就在你的layout.phtml
。
如果您需要它可配置,您可以
layout.phtml
headTitle
视图助手Zend\Mvc\Service\ViewHelperManagerFactory
以了解相关信息。 我没有测试过3.& 4. - 我更喜欢1.因为这是view
/ phprenderer
特定问题。