创建模块,控制器或操作时未找到ZF2路由名称

时间:2014-06-06 04:32:36

标签: zend-framework2 url-routing acl

我的应用程序具有以下模块结构 模  +申请  + UserAdmin

我希望它在“应用程序”下定义的所有模块都是通用的。有了这个,我在Application / Module.php中实现了ACL。如果不允许ACL,我将流重定向到UserAdmin / config / module.config.php中定义的路由“useradmin”。

在运行时我没有任何问题,我能够将所有操作路由到此路由。但是,我正在尝试使用应用程序的vendor / bin目录下的zf.php创建新模块或控制器或操作。

我发出以下命令

vendor/bin/zf.php create controller UserGroup UserAdmin

我收到以下错误

PHP Fatal error:  Uncaught exception 'Zend\Mvc\Router\Exception\RuntimeException' with message 'Route with name "useradmin" not found' in /var/www/zf2/dwam/vendor/zendframework/zendframework/library/Zend/Mvc/Router/SimpleRouteStack.php:328
Stack trace:
#0 /var/www/zf2/dwam/module/Application/Module.php(54): Zend\Mvc\Router\SimpleRouteStack->assemble(Array, Array)
#1 [internal function]: Application\Module->Application\{closure}(Object(Zend\Mvc\MvcEvent))
#2 /var/www/zf2/dwam/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468): call_user_func(Object(Closure), Object(Zend\Mvc\MvcEvent))
#3 /var/www/zf2/dwam/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207): Zend\EventManager\EventManager->triggerListeners('route', Object(Zend\Mvc\MvcEvent), Object(Closure))
#4 /var/www/zf2/dwam/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php(296): Zend\EventManager\EventManager->trigger('route', Object(Zend\Mvc\MvcEvent), Object(Closure))
#5 /var/www/zf2/dwam/ven in /var/www/zf2/dwam/vendor/zendframework/zendframework/library/Zend/Mvc/Router/SimpleRouteStack.php on line 328

引发此错误的Application / Module.php中的行是

 $url      = $router->assemble( array( ), array( "name" => "useradmin" ) );

当我评论此行以及对$ url的任何引用时,将创建新控制器。我试图找到不同的方法来从Module.php创建网址,我无法找到任何。

我已将名称更改为我在“Application / config / module.config.php”中定义的路由名称,但仍然无效

useradmin route

    'useradmin' => array(
        'type' => 'Literal',
        'options' => array(
            'route' => '/useradmin',
            'defaults' => array (
                '__NAMESPACE__' => 'UserAdmin\Controller',
                'controller' => 'Index',
                'action' => 'index',
            ),
        ),
        'may_terminate' => true,
        'child_routes' => array(

有人能帮助我吗?

0 个答案:

没有答案