【问题标题】:Codeigniter MVC controller architectureCodeigniter MVC 控制器架构
【发布时间】:2011-01-28 06:02:52
【问题描述】:

我正在使用 CodeIgniter 构建一个站点,该站点主要由静态内容组成(尽管 CMS 后端相对较小,并且有代码根据用于访问它的域来处理本地化/国际化)。通常,在这种情况下,我会使用负责呈现静态内容的页面控制器,但由于网站上有相当数量的页面(30+),它很快就会包含很多方法(假设每页一个)。

我应该根据网站的不同部分将我的 Pages 控制器分成多个控制器(可能从它继承)吗?我应该在 Pages 控制器中以不同的方式组织方法吗?这里的最佳做法是什么?

谢谢!

贾斯汀

【问题讨论】:

    标签: model-view-controller architecture codeigniter


    【解决方案1】:

    我会说将您的控制器分成多个。不仅可以更容易地在文件中找到您需要处理的任何内容,而且“属于”同一部分的方法之间可能存在关系。最终结果是一个更有条理的项目,

    另外,为什么不使用一种方法来提供静态页面,并根据 url ($id) 确定要提供的页面?您必须稍微使用 CI 路由,以便仍然拥有“site.com/pages/static_page_x”而不是“site.com/pages/view/static_page_x”,但如果您有一致的访问方式静态页面,它可以节省一些输入,给你一种在不接触控制器代码的情况下添加新页面的方法,如果你想对所有静态页面应用你认为不需要的东西,它也可能会派上用场之前。

    【讨论】:

      【解决方案2】:

      您为什么不尝试使用帮助程序通过 base_url() 方法检测您的 URL,然后对其进行处理。设置一个会话变量来定义控制器中的语言...

      【讨论】:

        猜你喜欢
        • 2013-12-28
        • 1970-01-01
        • 2023-03-21
        • 2017-11-07
        • 1970-01-01
        • 2013-05-14
        • 1970-01-01
        • 2013-12-06
        • 1970-01-01
        相关资源
        最近更新 更多