繁体   English   中英

如何模块化Code​​Igniter?

[英]How to modularize CodeIgniter?

好吧,我一直在思考我编写的第一个真正的CodeIgniter网站。 我希望以这样的方式模块化网站:我有一个格式化导航栏的控制器,一个格式化多用途右列的控制器,以及一个格式化内容区域的控制器。

我的想法是为站点的任何部分的每个状态设置一个控制器(一个例子是正确的列,它将有3个状态;新帖子,相关帖子和搜索过滤器)。 我也会将内容区域设置为许多不同的状态(例如搜索结果,视图帖子,新帖子等)。

问题是我找不到一种方法来获取多个控制器输出并将其编译成单个模板(注意,我说控制器,而不是视图)。

我已经看过HMVC扩展,但这对我的第一个网站来说是远远不够的,我希望有一个更简单的解决方案(除非你能证明我错了,并证明HMVC比我见过的更容易)。

在MVC模型中,这对我来说似乎有点不可思议。

如果您正在使用右侧面板的单个有状态视图,可能会根据输入更改状态(即用户当前所在的页面),那么我将为该面板添加模型。 控制器的操作将负责设置正确的模型状态(即“您处于主页状态”)。 该模型可以负责告诉右侧面板查看要加载的子视图。

这就是我可能会实现类似的东西。 HMVC似乎有点过分,并且在这个例子中,不会按预期使用。

对于你想要完成的事情,评论中建议的火柴盒模块似乎有点矫枉过正。 我不认为使用控制器来格式化这些区域是一个非常好的方法。

通常,想要使用CodeIgniter时所描述的功能类型的人最终会使用模板库。 CodeIgniter有几个开源模板库,可以通过谷歌搜索“codeigniter模板库”轻松找到。

我从来没有使用过它们,所以我不会推荐任何特定的库。 然而,我正在研究的应用程序借用了Phil Sturgeon的模板库中的一些想法。 您可能找不到与您需要的功能完全匹配,但至少您将能够从其他人提出的解决方案中获得灵感。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM