2013-05-30 29 views
1

我想用CodeIgniter实现HMVC。我用这个库从bigbucket在CodeIgniter中的模块内创建模块

CI HMVC Library

当我创建管理模块,它工作正常的我。但是现在我正在尝试在模块内部定义模块。所以,我的结构将是这样的: - enter image description here

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

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

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

它的工作原理。但是,当我尝试访问使用此URL的子模块: -

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

它给我404错误。

任何提示都会有帮助。

谢谢

回答

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页面。

+0

谢谢。我同意你的意见。我知道我可以用这种方式实施。 –

0

我跟我的同事和高级开发人员讨论过这个问题。经过漫长的讨论后,我们同意这样一个观点:“我们可以实施这种结构,但这不是一个好的做法,会引起维护中的问题和复杂性。”