在路线Zend Framework 3中设置模块名称,控制器名称和操作名称3



我是Zend 3的新手。我有多个模块,但我不知道如何路由不同的模块控制器操作。

'route' => '/[:module][/]dashboard[/][:action][/:id]',

上述路线在Zend 2.4中正常工作。但是我无法在Zend 3

中找到解决方案

在ZF3中,每个模块都应具有自己的名称空间。因此,如果您在不同模块中有多个dashboard Controller,则必须在每个模块中定义一个路由。config.php,例如:

 'modulenameDashboard' => [
                'type' => 'segment',
                'options' => [
                    'route' => '/modulename/dashboard[/:action][/:id][/]',
                    'defaults' => [
                        'controller' => ModnameControllerDashboardController::class,
                        'action' => 'index',
                    ]
                ]
            ],

您还可以在模块中生成此路线:: getConfig()另外,如果您只有一个Dashboard Controller,则无需在路由中指定模块,您只需要指向特定的控制器类

 'dashboard' => [
                'type' => 'segment',
                'options' => [
                    'route' => '/dashboard[/:action][/:id][/]',
                    'defaults' => [
                        'controller' => ModnameControllerDashboardController::class,
                        'action' => 'index',
                    ]
                ]
            ],

最新更新