我正在尝试将modular extensions实现到codeigniter 2设置中,但是遇到了一些问题。我按照维基上的安装说明进行操作,一切正常。然后我开始玩一下并尝试使用它。我所做的只是创建一个名为users的新模块,其中包含所需的文件夹,并添加了一个名为users_m的模型类。然后我尝试从我的欢迎模块控制器加载它。根据维基,这应该是非常简单的。我只是添加了这一行
$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
我不知道这两次尝试是否相关,但显然我的设置有些不对劲。有人能指出我正确的方向吗?
答案 0 :(得分:3)
如果您从同一模块中的控制器访问模型,则可以使用以下方式加载它:
$this->load->model(‘user_m’);
您在模块之间交叉加载时只需执行$this->load->model(‘module/model_name’);
。
为了确保您的模型位于此处?
application/modules/users/models/users_m.php
至于探查器错误:
1)您是否完成了安装step 5并将Modular Extensions核心文件放入应用程序/核心?
2)你有最新版本的HMVC吗? last couple days中有mx / loader.php的更新。
聚苯乙烯。关于HMVC的精彩教程:http://net.tutsplus.com/tutorials/php/hvmc-an-introduction-and-application/
答案 1 :(得分:1)
如果您的文件夹结构如下:
application/
modules/
users/
models/
users_m.php
然后用它来控制你的控制器中的模型
$this->load->model('users/users_m','',TRUE);