我对yii2
很新,我正在使用 postgres ,我的db.php
文件是 -
return [
'class' => 'yii\db\Connection',
'dsn' => 'pgsql:host=localhost;port=5432;dbname=xxxx',
'username' => 'postgres',
'password' => 'abc',
'charset' => 'utf8',
];
我直接在postgres中创建了一个表,并使用ActiveRecord
成功获取了数据。
然后,我使用
./yii migrate/create logins
在迁移文件夹中成功创建了一个文件,然后我将以下内容放在up
方法 -
public function up()
{
$this->createTable('logins', [
'id' => Schema::TYPE_PK,
'name' => Schema::TYPE_STRING . ' NOT NULL',
'password' => Schema::TYPE_STRING . ' NOT NULL'
]);
}
并解雇./yii migrate
来更新数据库,但我收到了以下错误 -
Yii Migration Tool (based on Yii v2.0.10)
Exception 'yii\db\Exception' with message 'could not find driver'
in /opt/lampp/htdocs/project/server/api/project/vendor/yiisoft/yii2/db/Connection.php:549
我有什么步骤吗?或者postgres连接有问题吗?
答案 0 :(得分:2)
我认为这是基本模板。
确保您已配置db
个组件。
在config/console.php
文件中,检查db
部分中是否有components
个键,如:
// ...
'components' => [
// ...
'db' => require(__DIR__ . '/db.php'),
// ...
],
如果一切正常,但仍然存在错误,您需要检查是否已正确安装pgsql
驱动程序。
有关详细信息,请参阅PDO Installation。