无法通过DI覆盖路由

时间:2012-09-25 09:11:39

标签: dependency-injection zend-framework2 zfcuser

我正在尝试使用akrabat's method覆盖ZfcUser提供的路由,但它似乎没有任何效果。我首先将路由从/user重新定义为/users,但是稍后会想要添加其他路由(如果我可以使其工作,应该很简单。)

我的DI配置:

return [ 
    'di' => [
        'instance' => [
            'Zend\Mvc\Router\RouteStack' => [
                'parameters' => [
                    'routes' => [ 
                        'zfcuser' => [
                            'options' => [
                                'route' => '/users'
                            ]   
                        ]   
                    ]   
                ]   
            ]   
        ]   
    ]   
];

我是否犯了一个明显的错误,或者自从此博客帖子以来,这个配置结构发生了变化吗?

1 个答案:

答案 0 :(得分:1)

您将从自己的模块中覆盖配置。

'router' => array(
    'routes' => array(
         'zfcuser' => array(
              //...
         )
    )
)

虽然如果我是正确的,完整的DI路径仍然可以工作......重要的是,你的模块在zfcUser-Module之后加载。因此,在您的application.config.php中,请确保您的模块名称空间在zfcUser之后列出。因为数组只是根据加载时间被覆盖^^