我是 CodeIgniter 的初学者,仍在努力完全掌握如何最干净地使用 MVC 意识形态。
我正在编写一个基本的 CMS 系统,该系统能够对条目进行投票和关注人员等,因此,我发现自己在多个视图中使用相同或相似的代码片段,其中包括各种 html 和逻辑片段,例如:
- 投票小组
- 关注/取消关注面板
- 登录/注销面板
- 检查用户是否登录的代码等...
我想知道将这段代码放在哪里以便统一?我在想一个帮手是要走的路吗?如果我在控制器中声明助手,可以从相应的视图中调用它吗?
一些元素是动态的 - 例如关注/取消关注按钮 - 它需要检查您是否已经关注用户并显示适当的按钮,这需要模型进行检查。我现在拥有的是所有逻辑都在控制器中,它返回一个适当的按钮,但是在控制器返回中返回形成的 html 代码似乎很奇怪。它应该更像:
- 控制器检查您是否正在关注某人
- 控制器将布尔值传递给视图
- 视图用这个值调用助手来绘制相应的按钮
另外,作为第二个问题,我一直在 foreach 循环中对 mysql 数组进行大量循环,以处理从视图返回的 mysql 结果。似乎我的观点变得有些复杂,但是我想不出另一种方法来做到这一点,尽管也许这也应该在另一个助手中完成?
抱歉,如果这是一个幼稚或重复的问题,确实围绕这个主题进行了很多讨论,但它并不总是容易与另一个项目相关联。