我创建了一个DataSource
来连接WSDL
服务器并发布/获取数据。
但是,我不知道如何在控制器中使用它?使用MySQL数据库(我的意思是我需要它们两个,soap
并且需要一个数据库。)
如果我把它放在我的模型中,它将使用我的数据源;但我认为它不会使用它的mysql表...:
public $useTable = false;
public $useDbConfig = 'mydatasource';
如何?
答案 0 :(得分:0)
您可以使用$ 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();
}
}
}