我得到了一个zend 2导航错误,似乎找不到解决方案。什么都搜遍了,什么都试过了……
这是我的心声:
路线(Application/config/module.config.php):
'home' => array(
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => array(
'route' => '/',
'defaults' => array(
'controller' => 'Application\Controller\Index',
'action' => 'index',
),
),
),工厂(Application/config/module.config.php):
'service_manager' => array(
'factories' => array(
'navigation' => 'Zend\Navigation\Service\DefaultNavigationFactory',
),导航(Application/config/module.config.php):
'navigation' => array(
'default' => array(
array(
'label' => 'home',
'route' => 'home',
),
),
),布局(Application\view\layout\layout.phtml):
<?php echo $this->navigation('navigation')->menu(); ?>错误:
Uncaught exception 'Zend\Navigation\Exception\InvalidArgumentException' with message 'Invalid argument: $route must be a non-empty string or null' in
/var/www/html/project/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php on line 904和
Zend\Navigation\Exception\InvalidArgumentException: Invalid argument: $route must be a non-empty string or null in /var/www/html/project/vendor/zendframework/zendframework/library/Zend/Navigation/Page/Mvc.php on line 397以前的例外情况:
Zend\ServiceManager\Exception\ServiceNotCreatedException: An exception was raised while
creating "navigation"; no instance returned in /var/www/html/project/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php on line 904有什么问题吗?我好像没办法让它起作用.
发布于 2014-02-18 09:40:55
您的配置在这里看起来很好;尽管错误表示您要将null作为路由值传递到某个Mvc类。
请记住,如果您在其他模块(在module.config.php中)中有任何其他导航配置,那么在引导过程中也将包括在工厂中。
现在,当尝试合并来自不同模块的多个导航信任时,我又出现了另一个错误:无效参数:无法确定类实例化
错误是由于导航工厂不知道应该创建Zend\Navigation\Page\Mvc还是Zend\Navigation\Page\Uri。这意味着您在module.config.php中的“导航”配置中缺少了一些配置条目。
要确保工厂能够创建正确的工厂,您需要确保以下内容
uri键route键或一个(或两者) controller和action键您可以在导航文件中阅读更多有关这方面的内容。
https://stackoverflow.com/questions/21847867
复制相似问题