Cakephp - 从动作内部连接到不同的数据库/主机

时间:2012-06-29 18:41:06

标签: mysql cakephp

在cakephp中,我希望能够从网站上的一个操作连接到不同的数据库。该操作确定要连接的数据库和主机。使用cakephp 1.3。

我已经看到你可以在哪里更改控制器的beforeFilter中的数据库连接,但我希望能够从操作中处理这个,因为这是我找到数据库和/或主机的地方,我需要连接到。

我可以在里面编写自己的SQL。我不需要经历模型。只想做一个简单的添加/更新SQL语句。

1 个答案:

答案 0 :(得分:4)

您可以轻松configure more than one database connection在您的应用中使用。

config/database.php中,除了现有的$default之外,还要为数据库配置创建另一个变量:

var $otherDatabase = array(
    'driver' => 'mysql',
    // more settings...
);

然后,在您的模型中,设置$this->useDbConfig = 'otherDatabase'或控制器$this->MyModel->useDbConfig = 'otherDatabase'。任何后续的find()都将使用已配置的数据库。