CakePHP - 跨多个数据库关联模型

时间:2014-08-11 15:38:33

标签: php cakephp model-associations

我正在使用两个模型,每个模型位于不同的数据库中,但使用相同的服务器登录信息(主机,用户和密码)

模型消费者(数据库A) HasMany ConsumerOrder

模型 ConsumerOrder (数据库B)属于消费者

我已经完成了所有关联,但是在我运行$this->ConsumerOrder->fetch('all');的那一刻它没有编写连接,我认为它只是在数据库表的名称上添加了一个前缀,但我没有知道该怎么做,因为它应该改变核心。

有什么想法吗?

解决

我评论了文件“lib / Model / Datasource / DboSource.php”中的第1064行

该行保持CakePHP生成连接,因为数据库的名称不同。

if ($model->useDbConfig === $linkModel->useDbConfig) { }

1 个答案:

答案 0 :(得分:-1)

请检查您是否在控制器中导入模型。 如果不是这样,请导入那样的模型..

$ConsumerOrder= ClassRegistery::init('ConsumerOrder');

写完之后:

$variable = $ConsumerOrder->fetch('all');
print_r($variable);