Пример # 1
bschaeffer's
ответ на этот вопрос - в его последнем примере:
$this->load->model('table');
$data = $this->table->some_func();
$this->load->view('view', $data);
Как вы справляетесь с этим, когда 'table'
нене существует?
Пример # 2
try {
$this->load->model('serve_' . $model_name, 'my_model');
$this->my_model->my_fcn($prams);
// Model Exists
} catch (Exception $e) {
// Model does NOT Exist
}
Но все же после запуска этого (очевидно, что модель не существует - но иногда будет), происходит сбой со следующей ошибкой:
Обнаружена ошибка
Невозможно найти указанную вами модель: serve_forms
Я получаювызов этой функции:
1) Получение некоторого JSON:
"model_1:{"function_name:{"pram_1":"1", "pram_2":"1"}}
2) И превращение его в вызов функции:
$ this-> load-> model ('serve_'. "model_1", "my_model");
3) Где я звоню:
$this->my_model->function_name(pram_1=1, pram_2=1);
РЕШЕНИЕ
Проблема заключается в том, что функция CodeIgniter show_error(...)
отображает ошибку, а затем exit;
... Не круто ... Поэтому я переопределил: model(...)
-> my_model(..)
(вы получите ошибки, если просто переопределите его) и удалилиshow_error(...)
, потому что по какой-то причине вы не можете переопределить его - странно для Codeigniter).Затем в my_model(...)
он сделал исключение
Мое личное мнение: вызывающая функция должна return
show_error("message");
, где show_error возвращает FALSE
--- что или вы могли бы взятьexit;
- и сделать show_error(...)
переопределенным