我想在zend框架2中很難把一些控制器的路線,甚至在我讀了很多後,我不明白爲什麼它仍然告訴我所請求的控制器無法映射到現有的控制器類。我有一個名爲CRM的模塊,並在src文件夾中有聯繫人和公司,每個人都有控制器/表單/模型。這是我的module.config文件:在zend框架中的路線2
array(
'controllers' => array(
'invokables' => array(
'CRM\Controller\Contacts' => 'CRM\Controller\ContactsController',
'CRM\Controller\Companies' => 'CRM\Controller\CompaniesController',
),
),
'router' => array(
'routes' => array(
'contacts' => array(
'type' => 'Segment',
'options' => array(
'route' => '/contacts[/:action][/:id]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'Contacts\Controller\Contacts',
'action' => 'index',
),
),
),
'companies' => array(
'type' => 'segment',
'options' => array(
'route' => '/companies[/:action][/:id]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'Companies\Controller\Companies',
'action' => 'index',
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'contacts' => __DIR__ . '/../view/crm',
'companies' => __DIR__ . '/../view/crm',
),
),
);
任何幫助將非常感激。
我只是嘗試在getAutoloaderConfig()中添加這些行,但它似乎仍然不起作用。請求的控制器無法映射到現有的控制器類。 – knot 2013-02-11 13:23:31
@ user2047893對不起,您仍然需要在控制器配置的'invokables'部分中映射控制器(即分別用'Contacts'和'Companies'更改您現在在那裏的'CRM'前綴) – Crisp 2013-02-11 13:29:24
我只看到現在你寫了第二條評論。是的,這確實是問題所在。我已經修改了它們,它的工作原理。非常感謝! – knot 2013-02-11 13:37:38