проблема изменения источника данных

Я использую CakePHP 1.3 с двумя источниками данных:

  1. master
  2. default

Как я могу изменить источник данных для всей функции, т.е. default в master для этой функции.

Если я использую это

$this->{Model}->setDataSource('master');

это меняется только для этой модели.

Есть ли общий способ ???

3

Решение

ХОРОШО. Попробуйте сделать что-то вроде этого. Я попробовал это в более новой версии торта, и это сработало.

в модели вашего приложения есть функция

public function getDataSource(){
$dataSource = Configure::read('currentDataSource');
if($dataSource && $dataSource !== $this->useDbConfig){
$this->setDataSource($dataSource);
}
return parent::getDataSource();
}

Затем в вашем контроллере, на основе которого требуется источник данных, напишите его в configure.

Configure::write('currentDataSource', 'yourDbsource');

Затем позвоните любой из ваших моделей.

Не забудьте указать по умолчанию один из bootstrap.php.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]