Предположим, у меня есть 2 идентичные таблицы, имеющие одинаковую структуру (назовите это 'tableA' & 'tableB').
Я хочу сохранить определенные данные в таблице 'A' и определенные данные в таблице 'B'.
СЕЙЧАС Я хочу использовать одну и ту же МОДЕЛЬ для обеих таблиц.
Я хочу изменить таблицу, связанную с моделью (скажем, «ModelM»), чтобы она динамически изменялась в зависимости от состояния на контроллере.
например,
В контроллере: - // пример кода
function saveProduct(){
$this->loadModel('ModelM');
if(condition){
$this->ModelM->useTable = 'A';
}else{
$this->ModelM->useTable = 'B';
}
$this->ModelM->save($this->data);
}
ДОПОЛНЕНИЕ НА 14 ЯНВАРЯ 2011 ГОДА
Ниже приведена копия / вставка кода, над которым я работаю:
function experiment(){
$tableName = 'temp_table'.'1234';
mysql_query('CREATE TABLE '.$tableName.' LIKE temp_home_masters');
$sql = $this->createInsertQuery($new_arr,$tableName);
$status = mysql_query($sql);
if($status){
echo "saved successfully";
}else{
echo "error";
}
$this->NewHomeMaster->setSource($tableName);//NewHomeMaster was previously attached to a different table , here I want to change the tableName the model linked with dynamically.Model 'NewHomeMaster' already exists and uses a table ...Here I am willing to link this model to the newly created tempory table.//
$home_details=$this->paginate('NewHomeMaster',array($new_conditions));
mysql_query('DROP table '.$tableName);
}
К сожалению, это не работает ...