Я использую HMVC и Template library (от Phil Sturgeon). Возникает проблема, когда я использую Modules::run
в моем коде:Библиотека HMVC и шаблонов (от Phil Sturgeon) в Codeigniter
$this->template->title("Some title")->set_partial('header', 'showmessage')->build('showanothermessage', $data);
и showmessage.php частичный вид:
echo Modules::run("goodbye");
страница ошибки появляются с:
PHP-ошибка обнаружено
Степень важности: Уведомление
Сообщение: Не определено свойство: GOODBYE :: $ агента
Имя файла: библиотеки/template.php
Порядковый номер: 122
Фатальная ошибка: Вызов функции члена is_mobile() на не-объект в D: \ Бинь \ WAMP \ WWW \ CodeIgniter \ Application \ библиотеки \ template.php на линии 122
Как исправить эту проблему. Заранее спасибо.
Update Мой goodbye
контроллер:
class GoodBye extends MY_Controller{
function __construct(){
parent::__construct();
}
function Index(){ echo "Goodbye"; }
}
Мои MY_Controller
:
class MY_Controller extends CI_Controller{
function __construct(){
parent::__construct();
// default layout
$this->template->set_layout("home_layout");
}
}
Мой autoload
файл:
$autoload['packages'] = array();
$autoload['libraries'] = array('database','session','template');
$autoload['helper'] = array();
$autoload['config'] = array();
$autoload['language'] = array();
$autoload['model'] = array();
Можем ли мы видеть контроллер 'goodbye', пожалуйста, какие-либо базовые контроллеры, которые вы распространяете вместе с ним, и ваш' autoload.php'? Это говорит о том, что библиотека пользовательского агента не загружается в 'goodbye', поскольку' modules :: run() 'выполняется независимо от текущего контроллера. –
Я удалил 'parent :: __ construct();' из 'GoodBye' контроллера, и он работает. Можете ли вы объяснить, почему? – hanuman0503
Честно говоря, я понятия не имею. Что говорит 'application \ libraries \ template.php строка 122'? –