2010-10-03 138 views
2

我試圖實現modular extensions成codeigniter 2設置,但我有幾個問題。我遵循wiki上的安裝說明,一切正常。然後我開始玩一下,然後嘗試使用它。我所做的只是創建一個名爲users的新模塊,並添加了一個名爲users_m的模型類。然後我嘗試從我的歡迎模塊控制器加載。根據wiki,這應該是非常簡單的。我簡單地添加了這條線codeigniter模塊化擴展

$this->load->model('users/users_m'); 

我的歡迎控制器的構造函數。

不幸的是,在這一點上我得到了死亡的白色屏幕。

所以我嘗試了別的。這一次,我刪除了負荷模型線,並添加

$this->output->enable_profiler(TRUE); 

這一次我得到了顯示的歡迎頁面和我的探查,但在頁面的頂部,我得到這個錯誤:

A PHP Error was encountered 

Severity: Notice 

Message: Undefined property: CI::$profiler 

Filename: MX/Loader.php 

Line Number: 145 

我不知道這兩次嘗試是否相關,但是我的設置顯然有些不對。有人能指出我正確的方向嗎?

回答

3

如果您訪問來自同一個模塊中的控制器模型,則可以僅使用加載:

$this->load->model(‘user_m’); 

你只需要做$this->load->model(‘module/model_name’);當模塊之間的交叉負載。

只是爲了確保您的模型位於此處?

application/modules/users/models/users_m.php 

至於剖析錯誤:
1)你有沒有做安裝step 5並把模塊化擴展核心文件轉換成應用程序/核心是什麼?
2)你有最新版本的HMVC嗎? last couple days已經更新了mx/loader.php。

Ps。在HMVC偉大的教程:http://net.tutsplus.com/tutorials/php/hvmc-an-introduction-and-application/

+0

好了,我不知道問題是什麼,但它可能已經下降到你提到的更新。我下載了最新版本,並重新開始。這一次似乎都工作正常。哦,是的,我試圖交叉加載。加上一個嘖嘖鏈接! – musoNic80 2010-10-04 12:24:02

1

如果你有文件夾結構,如:

application/ 
      modules/ 
        users/ 
         models/ 
          users_m.php 

然後用它來打電話modelsin你控制器

$this->load->model('users/users_m','',TRUE);