配置多数据库:
return [
// ...
'components' => [
// ...
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=example',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
],
'db2' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=example',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
],
],
// ...
];
如果在你的应用中应用了不止一个数据库,且你需要给你的 AR 类使用不同的数据库链接(DB connection) ,你可以覆盖掉 yii\db\ActiveRecord::getDb() 方法:
class Customer extends ActiveRecord
{
// ...
public static function getDb()
{
return \Yii::$app->db2; // 使用名为 "db2" 的应用组件
}
}