有没有简单的解决方案如何使用Doctrine对一个数据库执行INSERT查询而对另一个数据库执行SELECT查询?
我正在尝试将Doctrine与Mysql复制一起使用......
答案 0 :(得分:1)
已经找到解决方案,需要修改2个类:
类Doctrine_Query,更改preQuery方法:
public function preQuery()
{
$doctrine_manager = Doctrine_Manager::getInstance();
if ($this->getType() == Doctrine_Query::SELECT) {
$this->_conn = $doctrine_manager->getConnection('slave');
} else {
$this->_conn = $doctrine_manager->getConnection('master');
}
}
类Doctrine_Record,更新方法保存:
public function save(Doctrine_Connection $conn = null)
{
if ($conn === null) {
$conn = Doctrine_Manager::getInstance()->getConnection('master');
}
parent::save($conn);
}