Ich arbeite an einem Projekt mit ZF2, und das ZFCUser Modul mit Lehre. Ich habe ein benutzerdefiniertes Benutzermodul erstellt, das zfcuser, auch eine benutzerdefinierte Entität für die Benutzertabelle, erweitert und alle notwendigen Änderungen für die Integration vornimmt. Aber mein Problem ist, wenn ich zu authentifizieren versucht, bekomme ich diesen Fehler:zfcuser + Doktrin benutzerdefinierte Benutzereinheit
An alias "Zend\Db\Adapter\Adapter" was requested but no service could be found.
Dies geschieht, wenn zfcuser_user_mapper den Adapter zu ändern versucht.
Hinweis: Ich bin nicht sehr klar, warum ich den Zend \ Db \ Adapter \ Adapter verwenden muss, da ich mit der Lehre arbeite.
Dies ist der Code in der Modul.php des benutzerdefinierten Benutzermoduls.
public function getServiceConfig() {
return [
'aliases' => array(
'zfcuser_zend_db_adapter' => 'Zend\Db\Adapter\Adapter',
),
'factories' => [
'usuario_login_form' => 'Usuario\Factory\Form\Login',
'usuario_registro_form' => 'Usuario\Factory\Form\Register',
'usuario_user_service' => 'Usuario\Factory\Service\UserFactory',
//'usuario_user_mapper' => 'Usuario\Factory\Mapper\User',
'usuario_auth_service' => 'Usuario\Factory\AuthenticationService',
'Usuario\Authentication\Adapter\Db' => 'Usuario\Factory\Authentication\Adapter\DbFactory',
'Usuario\Authentication\Storage\Db' => 'Usuario\Factory\Authentication\Storage\DbFactory',
//'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\Adapter',
'usuario_user_mapper' => function ($sm) {
$mapper = new Mapper\User();
$mapper->setDbAdapter($sm->get('zfcuser_zend_db_adapter'));
$mapper->setEntityPrototype(new ORM\Entity\Usuarios());
$mapper->setHydrator(new \ZfcUser\Mapper\UserHydrator());
return $mapper;
},
]
];
}
Das ist mein global.php Datei
return array(
'doctrine' => array(
'connection' => array(
'orm_default' => array(
'driverClass' => 'Doctrine\DBAL\Driver\PDOMySql\Driver',
'params' => array(
'host' => 'localhost',
'port' => '3306',
'user' => 'root',
'password' => 'toor',
'dbname' => 'deporte',
)
)
)
),
);
Das ist meine module.config.php Datei:
'controllers' => array(
),
'doctrine' => array(
'driver' => array(
// overriding zfc-user-doctrine-orm's config
'usuario_entity' => array(
'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
'paths' => __DIR__ . '/../src/Usuario/ORM/Entity',
),
'orm_default' => array(
'drivers' => array(
'Usuario\ORM\Entity' => 'usuario_entity',
),
),
),
),
'zfcuser' => array(
'auth_adapters' => array(100 => 'Usuario\Authentication\Adapter\Db'),
// telling ZfcUser to use our own class
'user_entity_class' => 'Usuario\ORM\Entity\Usuarios',
// telling ZfcUserDoctrineORM to skip the entities it defines
'enable_default_entities' => false,
),
Ich danke für die Hilfe, habe ich bereits mit diesem Fehler seit Tagen. Vielen Dank und entschuldige mein Englisch.
Haben Sie zfcuser-orm-Lehre installieren? Und, hast du versucht, den Alias zu entfernen, 'zfcuser_zend_db_adapter '=>' Zend \ Db \ Adapter \ Adapter ','? –