我目前正在设置一个ZF2应用程序并且遇到了路由器。我查看了Zend的分段路由示例:
$route = Segment::factory(array(
'route' => '/:controller[/:action]',
'constraints' => array(
'controller' => '[a-zA-Z][a-zA-Z0-9_-]+',
'action' => '[a-zA-Z][a-zA-Z0-9_-]+',
),
'defaults' => array(
'controller' => 'Application\Controller\IndexController',
'action' => 'index',
),
));
通过调用http://example.com/Maps/edit,Zend将自动“导航”到MapController并调用EditAction()。 由于我使用Factory作为MapController,我正在寻找像
这样的解决方案$route = Segment::factory(array(
'route' => '/:factory[/:action]',
'constraints' => array(
'factory' => '[a-zA-Z][a-zA-Z0-9_-]+',
'action' => '[a-zA-Z][a-zA-Z0-9_-]+',
),
'defaults' => array(
'factory' => 'Application\Controller\Factory\DefaultControllerFactory',
'action' => 'index',
),
));
基本上我希望框架能够访问工厂而不是控制器,而无需手动列出任何单个工厂。
感谢您的任何建议!
答案 0 :(得分:1)
控制器管理器是ServiceManager,适用所有服务管理器功能。注册控制器工厂而不是将其声明为可调用