模块::run() 引发错误:“找不到指定的类:会话.php”


Modules::run() throwing error: "Unable to locate the specified class: Session.php"

我正在使用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,我没有想到要检查它。显然,这是一个更多人犯的错误,现在解决方案终于被记录在案。