我是Zend 3的新手。我有多个模块,但我不知道如何路由不同的模块控制器动作。
'route' => '/[:module][/]dashboard[/][:action][/:id]',
以上路由在zend 2.4中运行良好。但我无法在zend 3中找到解决方案
在ZF3中,每个模块都应该有自己的命名空间。因此,如果您在不同的模块中有多个DashboardController,则每个模块中都必须定义一个路径.config.php如:
'modulenameDashboard' => [
'type' => 'segment',
'options' => [
'route' => '/modulename/dashboard[/:action][/:id][/]',
'defaults' => [
'controller' => \Modname\Controller\DashboardController::class,
'action' => 'index',
]
]
],
您还可以在Module :: getConfig()中生成此路由此外,如果您只有一个DashboardController,则无需在路由中指定模块,您只需指向特定的控制器类
'dashboard' => [
'type' => 'segment',
'options' => [
'route' => '/dashboard[/:action][/:id][/]',
'defaults' => [
'controller' => Modname\Controller\DashboardController::class,
'action' => 'index',
]
]
],