我正在使用zend framework2实现doctrin2。当我执行命令时
./vendor/doctrine/doctrine-module/bin/doctrine-module orm:convert-mapping --namespace="Album\\Entity\\" --force --from-database annotation ./module/Album/src/
然后我看到了错误[PDOException] could not find driver
。
我的代码如下:
我的doctrine.local.php
<?php
return array(
'doctrine' => array(
'connection' => array(
'orm_default' => array(
'driverClass' => 'Doctrine\DBAL\Driver\PDOPgSql\Driver',
'params' => array(
'user' => 'root',
'password' => '',
),
),
)
));
?>
my doctrine.global.php
<?php
return array(
'doctrine' => array(
'connection' => array(
'orm_default' => array(
'driverClass' => 'Doctrine\DBAL\Driver\PDOMySql\Driver',
'params' => array(
'driver' => 'pdo_mysql',
'host' => 'localhost',
'dbname' => 'test',
),
),
)
));
?>
my application.module.config.php
'modules' => array(
'Application',
'DoctrineModule',
'DoctrineORMModule',
'Album',
),
In my album/module.config.php i have also add this code
namespace Album;
'doctrine' => array(
'driver' => array(
__NAMESPACE__ . '_driver' => array(
'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
'cache' => 'array',
'paths' => array(__DIR__ . '/../src/' . __NAMESPACE__ . '/Entity')
),
'orm_default' => array(
'drivers' => array(
__NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver'
)
)
)
)
答案 0 :(得分:0)
driver
数组中缺少params
个密钥。php_pdo_mysql
,php_pdo_pgsql
等特定的驱动程序扩展?答案 1 :(得分:0)
打开./vendor/doctrine/doctrine-module/bin/doctrine-module
并更改
#!/usr/bin/env php
到
#!/usr/bin/env php5