Я устанавливаю ZfcUser в качестве модуля аутентификации. Модуль отлично работает, за исключением того, что мне приходится определять его заново при каждом действии:
$sm = $this->getServiceLocator();
$auth = $sm->get('zfcuser_auth_service');
if ($auth->hasIdentity()) {
fb($auth->getIdentity()->getEmail());
}
else return $this->redirect()->toRoute('zfcuser');
Я попытался поместить код в конструкцию, но это не сработало. Затем я проверил диспетчер служб, но не смог правильно определить его во всех выпущенных версиях.
Это код из моего класса Module:
public function getServiceConfig() {
return array(
'factories' => array(
'Todo\Model\TodoTable' => function($sm) {
$dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
$table = new TodoTable($dbAdapter);
return $table;
},
),
);
}
Как правильно настроить сервис?