2017-01-23 3 views
1

Начало работы над zf3 проект с Доктрина, но столкнулась с этой проблемой.zend framework 3 и аутентификация доктрины

Это моя фабрика

public function __invoke(ContainerInterface $container, $requestedName, Array $options = null) { 
    $authenticationService = $container->get('doctrine.authenticationservice.orm_default'); 
    $entityManager = $container->get('doctrine.entitymanager.orm_default'); 
    return new $requestedName($entityManager, $authenticationService); 
} 

и контроллер

public function __construct(EntityManager $em, $auth) 
    { 
     $this->entityManager = $em; 
     $this->authService = $auth; 
    } 


public function loginAction() 
{ 
    //... 
} 

в конфигурации

'authentication' => [ 
     'orm_default' => [ 
      'object_manager' => 'Doctrine\ORM\EntityManager', 
      'identity_class' => 'Application\Entity\Users', 
      'identity_property' => 'username', 
      'credential_property' => 'password' 
     ], 
    ], 
... 

но дает ошибку

эта линия

$authenticationService = $container->get('doctrine.authenticationservice.orm_default'); 

дает мне ошибку

класса 'Zend \ Session \ Container' не найден

+1

У вас установлен модуль zend-session? – Wilt

+0

да, это необходимо и теперь работает –

ответ

3

У вас есть zend-session module установлен? Для проверки подлинности доктрины вам необходимо установить эту зависимость.

Похоже, что класс Zend\Session\Container недоступен, что предполагает, что этот модуль установлен неправильно.

Смежные вопросы