Cakephp 如何在mysql中使用soap数据源
我已经创建了一个Cakephp 如何在mysql中使用soap数据源,cakephp,datasource,cakephp-2.0,Cakephp,Datasource,Cakephp 2.0,我已经创建了一个DataSource,用于连接到WSDL服务器并发布/获取数据 但是,我不知道如何在控制器中使用它?使用MySQL数据库(我的意思是我需要两个数据库,一个soap和一个数据库。) 如果我把它放在我的模型中,它将使用我的数据源;但我认为它不会使用mysql表…: public $useTable = false; public $useDbConfig = 'mydatasource'; 如何操作?您可以使用$this->Modelname->setDataSource('def
DataSource
,用于连接到WSDL
服务器并发布/获取数据
但是,我不知道如何在控制器中使用它?使用MySQL数据库(我的意思是我需要两个数据库,一个soap
和一个数据库。)
如果我把它放在我的模型中,它将使用我的数据源;但我认为它不会使用mysql表…:
public $useTable = false;
public $useDbConfig = 'mydatasource';
如何操作?您可以使用$this->Modelname->setDataSource('default')和setDataSource('mydatasource')在两个源之间动态切换 但您还需要在使用表和不使用表之间进行切换,我使用以下代码在无表源代码和mysql之间进行切换:
public $oldSource = array();
public function setDbConfig($source = null, $useTable = null) {
$ds = $this->getDataSource();
if (method_exists($ds, 'flushMethodCache')) {
$ds->flushMethodCache();
}
if ($source) {
$this->oldSource = array('useTable' => $this->useTable, 'useDbConfig' => $this->useDbConfig);
$this->setDataSource($source);
if ($useTable !== null) {
$this->setSource($useTable);
}
} else {
if ($this->oldSource) {
$this->setDataSource($this->oldSource['useDbConfig']);
$this->setSource($this->oldSource['useTable']);
$this->oldSource = array();
}
}
}