если вы говорите о разных таблицах в одной и той же базе данных, вы можете сделать что-то вроде этого:
, если вы хотите изменить таблицу в каждой модели с одинаковым префиксом
в app_Model
function __construct($id = false, $table = null, $ds = null) {
$prefix = getPrefix();
$this->useTable = $prefix.$useTable;
parent::__construct($id,$table,$ds);
}
Таким образом, он изменит каждую таблицу моделей перед ее использованием .... если вы хотите, чтобы изменялся только клиент модели, просто поместите эту же функцию в модель клиента, если вы хотите, чтобы пара сделалато же самое в этой модели.Если вы хотите, чтобы все, кроме одного, делали это в app_model следующим образом
function __construct($id = false, $table = null, $ds = null) {
$prefix = getPrefix();
if ($this->name != 'Client')
$this->useTable = $prefix.$useTable;
parent::__construct($id,$table,$ds);
}
, это не поведение, но оно решает вашу проблему: S если вы хотите сделать это в неправильном поведении, вам нужно будет сделать что-то подобноеиспользуя beforeFind, beforeSave и т. д. (все предыдущие операции в базе данных), или загрузите модель (в контроллере это будет выглядеть так: префикс $ this-> Client-> useTable = $. $ this-> Client-> useTable;)
Помните, что функция getPrefix () - это имеющаяся у вас функция, которая сообщает вам, какой префикс использовать.
Я думаю, что вы всегда должны писать переменную $ useTable = 'Таблица';чтобы это работало.
Если вам нужны разные базы данных, попробуйте это решение отправьте в пекарню