我正在使用CodeIgniter 3和wiredesignz HMVC。
我有一个呈现视图的控制器。如果我从该视图中调用Modules::run('OtherModule/Controller/Action)
,它会在底部显示以下消息:
Unable to locate the specified class: Session.php
会话包含在自动加载配置中,并且在所有控制器中工作正常,而无需引用其他模块中的控制器。删除 Modules::run()
语句会消除错误,并且引用的方法是一个空的虚拟人,因此错误必须来自Modules::run()
本身。
谷歌展示了一些类似的问题,但没有一个得到回答。希望自从上次被问到以来,有人已经弄清楚了。非常感谢帮助!提前感谢!
我终于想通了!我尝试调用的控制器扩展MY_Controller,它直接扩展CI_Controller。显然,这对于通过 URL 调用方法很有效,但需要扩展MX_Controller才能Modules::run()
工作。相反,制作MY_Controller MX_Controller解决了问题。
我假设我在创建它时MY_Controller扩展MX_Controller,我没有想到要检查它。显然,这是一个更多人犯的错误,现在解决方案终于被记录在案。