0
我的dbAdapter有什麼問題?我正在通過這個tutorial,但我無法連接到數據庫服務器。沒有數據庫連接
下面是一些代碼片段:
Module.php
use Zend\ModuleManager\ModuleManager;
use Zend\Mvc\MvcEvent;
use Acl\Model\Roles;
use Acl\Model\RolesTable;
use Zend\Db\ResultSet\ResultSet;
use Zend\Db\TableGateway\TableGateway;
...
public function getServiceConfig()
{
return array(
'factories' => array(
'Acl\Model\RolesTable' => function ($sm) {
$tableGateway = $sm->get('RolesTableGateway');
$table = new RolesTable($tableGateway);
return $table;
},
'RolesTableGateway' => function ($sm) {
$dbAdapter = $sm->get('Zend\Db\Adapter\Adapter');
$resultSetPrototype = new ResultSet();
$resultSetPrototype->setArrayObjectPrototype(new Roles());
return new TableGateway('acl_roles', $dbAdapter, null, $resultSetPrototype);
}
)
);
}
global.php
return array(
'db' => array(
'driver' => 'Pdo',
'dsn' => 'mysql:dbname=mycms;host=localhost',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
)
),
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\AdapterServiceFactory'
)
)
);
怎麼可以看到,我與TableGateway工作。如果我做了轉儲,我可以看到來自exchangeArray()函數的鍵,但沒有值。如果我刪除global.php中的整個數據庫連接,則不會有任何更改。
連接本身是正確的,我可以採取數據並通過MySQL連接。
任何想法?
檢查錯誤登錄,你可能會發現任何關於問題本身的提示。 – Conti