我拉着我的頭髮......一直在搜索每一個線程,如果有人能指出我的一個工作示例,將不勝感激。codeigniter + HMVC交叉模塊呼叫控制器 - >方法
Accroding該文檔: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();
問題調用另一個模塊 - >控制器:的 「方法()」 不會被調用。每次只調用控制器的構造函數。
目標是將獨立的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
附加說明:沒有錯誤或腳本警告。它只是悄悄地調用構造函數。
感謝您的鏈接!我收到了以下消息:Module controller failed to run:ztest2/c2/testc2/ – Reed 2013-02-19 14:52:27
您的問題解決了嗎? – 2013-02-20 09:21:34
它已經解決了。我在下面回答了我的發現。我接受了你的答案,因爲它幫助我調試了這件事情。不知道HMVC拋出錯誤只記錄。謝謝! – Reed 2013-02-20 15:32:01