将子路由添加到 zend 框架模块控制器
Adding child routes to zend framework module controller
这是我的 cortana-resources
路线的配置:
'cortana-resources' => array(
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => array(
'route' => '/cortana/resources',
'defaults' => array(
'controller' => 'Cortana\Controller\Resources',
'action' => 'index',
),
),
'may_terminate' => true,
'child_routes' => array(
'default' => array(
'type' => 'Segment',
'options' => array(
'route' => '/[:controller[/:action]]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
),
'defaults' => array(
),
),
),
),
),
整个系统使用cortana-resources
路由来引用http://127.0.0.1/cortana/public/cortana/resources
我想在Cortana
模块下的resources controller
中添加一个add action
。我该如何做到这一点?解析不正确。
根据您的评论,我建议您将路由配置更改为:
'cortana-resources' => array(
'type' => 'Zend\Mvc\Router\Http\Segment',
'options' => array(
'route' => '/cortana/resources[/:action]',
'defaults' => array(
'controller' => 'Cortana\Controller\Resources',
'action' => 'index',
),
),
除非您想在此路由下方添加其他控制器,否则没有真正的理由在此处使用子路由。
这是我的 cortana-resources
路线的配置:
'cortana-resources' => array(
'type' => 'Zend\Mvc\Router\Http\Literal',
'options' => array(
'route' => '/cortana/resources',
'defaults' => array(
'controller' => 'Cortana\Controller\Resources',
'action' => 'index',
),
),
'may_terminate' => true,
'child_routes' => array(
'default' => array(
'type' => 'Segment',
'options' => array(
'route' => '/[:controller[/:action]]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
),
'defaults' => array(
),
),
),
),
),
整个系统使用cortana-resources
路由来引用http://127.0.0.1/cortana/public/cortana/resources
我想在Cortana
模块下的resources controller
中添加一个add action
。我该如何做到这一点?解析不正确。
根据您的评论,我建议您将路由配置更改为:
'cortana-resources' => array(
'type' => 'Zend\Mvc\Router\Http\Segment',
'options' => array(
'route' => '/cortana/resources[/:action]',
'defaults' => array(
'controller' => 'Cortana\Controller\Resources',
'action' => 'index',
),
),
除非您想在此路由下方添加其他控制器,否则没有真正的理由在此处使用子路由。