編輯:我收到此異常也 其他信息: 的Zend \的mvc \異常\ InvalidControllerException
與Message
控制器類型賬戶\控制器\ VoucherController無效;必須實現的Zend \ STDLIB \ DispatchableInterface
<?php
namespace Account;
return array(
'controllers' => array(
'invokables' => array(
'Account\Controller\Account' => 'Account\Controller\AccountController',
'Account\Controller\Voucher' => 'Account\Controller\VoucherController',
),
// --------- Doctrine Settings For the Module
'doctrine' => array(
'driver' => array(
'account_entities' => array(
'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
'cache' => 'array',
'paths' => array(__DIR__ . '/../src/Account/Entity')
),
'orm_default' => array(
'drivers' => array(
'Account\Entity' => 'account_entities'
)
)
)
),
// The following section is new and should be added to your file
'router' => array(
'routes' => array(
'account' => array(
'type' => 'segment',
'options' => array(
'route' => '/account[/][:action][/:id]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'Account\Controller\Account',
'action' => 'index',
),
),
),
'voucher' => array(
'type' => 'segment',
'options' => array(
'route' => '/account/voucher[/][:action][/:id]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'Account\Controller\Voucher',
'action' => 'index',
),
),
),
),
),
'view_manager' => array(
'template_path_stack' => array(
'account' => __DIR__ . '/../view',
),
),
),
);
現在的問題是我得到一個404,當我嘗試訪問MYHOST /帳號/憑證 PS:我已經在賬戶控制器/控制器/憑證和帳戶/查看/憑證下的視圖名爲index.phtml現在我不知道我在這裏錯過了什麼。
錯誤信息Controller type of Account \ Controller \ VoucherController無效;必須實現Zend \ Stdlib \ DispatchableInterface'說你的控制器錯了。它必須包含DispatchableInterface(如果它擴展了ActionController,那麼它會執行)。如果您無法弄清楚,請編輯您的問題並顯示您的控制器代碼。 – timdev
請張貼您的控制器代碼。看起來像是控制器類的問題,而不是你的路線。 – Andrew
@timdev你是對的,我有執行AbstractInterfaceController的問題。我沒有執行,如果你可以回答,我可以將它標記爲正確 –