ServiceNotFoundException w ZendFramework 2, przykład z Rob Allen
przez ostatnie kilka tygodni obserwowałem szczególnie ZF2Przykład „albumu” Roba Allena, Stworzyłem przykład DB-'zf2tutorial 'i przykładowy table-'album', który działa dobrze, pobierając wszystkie elementy, gdy używam php-mysql, więc problemy z danymi w DB.
Mój plik local.php wygląda takcon.fil.autoload / local.php:
return array(
'db' => array
(
'driver' => "Pdo",
'dsn' => "mysql:dbname=zf2tutorial;hostname=localhost",
'username' => "user", //here I added my valid username
'password' => "password", //here I added my valid password
'driver_options' => array
(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"
),
),
);
Module.php ** module / Album / Model.php
<?php
namespace Album;
use Album\Model\AlbumTable;
class Module
{
public function getAutoloaderConfig()
{
return array(
'Zend\Loader\ClassMapAutoloader' => array(
__DIR__ . '/autoload_classmap.php',
),
'Zend\Loader\StandardAutoloader' => array(
'namespaces' => array(
__NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
),
),
);
}
public function getConfig()
{
return include __DIR__ . '/config/module.config.php';
}
public function getServiceConfiguration()
{
return array(
'factories' => array(
'album-table' => function($sm) //also tried this 'Album\Model\AlbumTable' => function($sm)
{
$dbAdapter = $sm->get('db-adapter');//also tried this $dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
$table = new AlbumTable($dbAdapter);
return $table;
},
),
);
}
}
Chciałem tylko sprawdzić, czy działa zf2turorial / album, czy nie rzuca tego błędu, który jest podobny doto opublikuj tutaj w stackoverlow.
Błąd, który rzuca to:Informacje dodatkowe: Zend ManagerManager Wyjątek ServiceNotFoundException
File:
..\vendor\zendframework\zendframework\library\Zend\ServiceManager\ServiceManager.php:392
Message:
Zend\ServiceManager\ServiceManager::get was unable to fetch or create an instance for Album\Model\AlbumTable
Śledziłem również samouczek ZF2 Beta 5, ale wciąż napotykam ten problem. W przypadku, gdy ktoś ma rozwiązanie, podziel się z nami.
Dzięki