1

我正在尝试使用 CodeIgniter 实现 HMVC。我使用了 bigbucket 的这个库

CI HMVC 库

当我创建管理模块时,它对我来说很好。但现在我正在尝试在模块中定义模块。所以,我的结构将是这样的:- 在此处输入图像描述

这里“管理员”是我的主要模块。page是admin的一个子模块。我再次定义了页面模块的两个子模块 1) 静态和 2) 动态。

当我使用 url 访问管理模块时:-

http://localhost/ci_hmvc/index.php/admin 

有用。但是当我尝试使用这个 url 访问子模块时:-

http://localhost/ci_hmvc/index.php/admin/page

它给了我404错误。

任何提示都会有所帮助。

谢谢

4

2 回答 2

4

这不是它应该如何工作的。一个模块应该在模块中有它自己的文件夹(即使你仍然可以将它们放在你的本地控制器、模型、视图文件夹中,如果你不想要模块化分离的话)。

您应该为每个模块“功能”创建一个新方法。这样,它们仍将具有可用的相同属性和方法,并且没有意义,拥有一个新文件夹。

class Page extends MX_Controller {
    public function __construct()
    {
        parent::__construct();
        // Your constructor code
    }

    public function static()
    {
        // Your static page code
    }

    public function dynamic()
    {
        // Your dynamic page code
    }
}

路由和调用模块,您可以在 bitbucket 页面上阅读所有相关信息。

于 2013-05-30T17:15:36.277 回答
0

我与我的同事和高级开发人员讨论了这个问题。经过长时间的讨论,我们一致认为“我们可以实施这种结构,但这不是一个好的做法,并且会在维护中产生问题和复杂性。”

于 2013-05-31T05:30:41.633 回答