本地和实时的不同 cakephp 数据源

Different cakephp datasource for local and live

我的 MySQL 连接详细信息对于我的本地连接和部署的实时托管来说是不同的。我正在使用 CakePHP 3

目前我必须不断更改默认数据源,这并不是最好的方法。

我没有添加两个数据源,但我不确定如何在它们之间切换?

'Datasources' => [
    'development' => [
        'className' => 'Cake\Database\Connection',
        'driver' => 'Cake\Database\Driver\Mysql',
        'persistent' => false,
        'host' => '127.0.0.1',
        'port' => '8889',
        'username' => 'root',
        'password' => 'root',
        'database' => 'local',
    ],
    'deployment' => [
        'className' => 'Cake\Database\Connection',
        'driver' => 'Cake\Database\Driver\Mysql',
        'persistent' => false,
        'host' => 'localhost',
        'username' => 'username',
        'password' => 'password',
        'database' => 'live_database',
    ],

在引导程序或 App Controller 中,粘贴此内容

if(Configure::read('debug')){ ConnectionManager::config('deployment'); }

这会在调试为真时更改数据库的默认配置。