Я снимаю все свои волосы... Я искал каждую тему, был бы признателен, если бы кто-нибудь мог указать мне на рабочий пример.
Подтверждение документа: https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc Я могу вызвать другой модуль- > контроллер, используя
modules::run('module/controller/method', $params);
modules::load('module/controller/method', $params);
or
$this->load->module('module/controller');
$this->controller->method();
Проблема: "method()" никогда не вызывается. только конструктор контроллера вызывается каждый раз.
Целью является создание автономных MVC в качестве модуля и использование другими контроллерами.
Но независимо от того, что я делаю, он вызывает только конструктор, метод не вызывается.
Я начал использовать HMVC несколько недель назад, пропустил ли я что-то в документе или не использовал этот способ?
Вот настройка:
modules
|--ztest1
| |--controller/c1.php
|--ztest2
|--controller/c2.php
class C1 extends MX_Controller {
function __construct() {
parent::__construct();
}
function index () {
Modules::run('ztest2/c2/testc2/');
//Modules::load('ztest2/c2/testc2/');
//$this->load->module('ztest2/c2/testc2/');
//$this->c2->testc2();
}
}
class C2 extends MX_Controller {
function __construct() {
parent::__construct();
echo __FILE__." // ".__CLASS__."/".__FUNCTION__.PHP_EOL;
}
function testc2(){
echo __FILE__." // ".__CLASS__."/".__FUNCTION__.PHP_EOL;
}
}
output:
/app/modules/ztest2/controllers/c2.php // C2/__construct
дополнительное примечание: нет ошибки или предупреждения с помощью script. Он просто вызывает конструктор.