在CodeIgniter中的模块内创建模块

时间:2013-05-30 11:38:19

标签: php codeigniter codeigniter-hmvc

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

CI HMVC Library

当我创建管理模块时,它对我很好。但现在我想在模块中定义模块。所以,我的结构将是这样的: - enter image description here

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

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

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

它有效。但是当我尝试使用此URL访问子模块时: -

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

它给了我404错误。

任何提示都会有所帮助。

感谢

2 个答案:

答案 0 :(得分: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页面上阅读所有相关内容。

答案 1 :(得分:0)

我和我的同事和高级开发人员讨论了这个问题。经过长时间的讨论,我们同意“我们可以实施这种结构,但这不是一个好的做法,会给维护带来问题和复杂性。”