2017-01-23 5 views
1

Commencé à travailler sur zf3 projet avec Doctrine mais a rencontré ce problème.zend framework 3 et l'authentification de la doctrine

Ceci est mon usine

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); 
} 

et dans le contrôleur

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


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

dans la configuration

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

mais il donne l'erreur

cette ligne

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

me donne l'erreur

Class 'Zend \ Session \ Container' not found

+1

Avez-vous installé le module 'zend-session'? – Wilt

+0

oui l'a exigé et travaille maintenant –

Répondre

3

Avez-vous le zend-session module installé? Pour que l'authentification de doctrine fonctionne, vous devez installer cette dépendance.

Il semble que la classe Zend\Session\Container soit indisponible, ce qui suggère que ce module n'est pas correctement installé.