Если внутри конструктора моего контроллера, я загружаю две разные модели, например,
$this->load->model('Pens_model');
$this->load->model('Pencils_model');
, где каждая модель расширяет MY_Model, а MY_Model имеет следующую схему,
class MY_Model extends Model
{
protected static $tablename = "";
protected static $title = "";
protected static $idattribute = 'id';
...
...
function getTableName(){
return self::$tablename;
}
}
РучкиМодель имеет:
class Pens_model extends My_model {
function Pens_model(){
parent::MY_Model();
self::$tablename = "pens";
self::$title = 'Pens';
}
...
}
, а модель Карандаши имеет аналогичный конструктор с именем таблицы, как ' карандаши '.
Теперь индексная функция контроллера имеет следующее значение:
echo $this->Pens_model->getTableName()."\n";
echo $this->Pencils_model->getTableName()."\n";
Что я наблюдаю, так это то, что имя таблицы модели, которая была загружена последней (в данном случае карандашами), печатается дважды - как если бы имя таблицы и функции перезаписывались.Это ошибка CI / ограничение или ошибка в моей реализации?