Я пытаюсь использовать фабрику для создания экземпляра контроллера:
class AuthenticationController extends AbstractActionController
implements ControllerProviderInterface
{
private $loginLogoutService;
public function __construct($lls)
{
$this->loginLogoutService = $lls;
}
public function getControllerConfig() {
return array(
'factories' => array(
'Main\Controller\Authentication' => function(ControllerManager $cm) {
$sm = $cm->getServiceLocator();
$depA = $sm->get('LoginLogoutService');
$controller = new AuthenticationController($depA);
return $controller;
},
),
);
}
Но я получаю сообщение об ошибке:
Предупреждение: отсутствует аргумент 1 для
Главная \ Controller \ AuthenticationController :: __ конструкт ()
Почему фабрика не используется для создания контроллера?
getControllerConfig()
должен быть в вашем Module.php
, не в самом контроллере. Все остальное выглядит хорошо.
Других решений пока нет …