【问题标题】:Why does Joomla separate MVC View into two parts为什么Joomla将MVC View分成两部分
【发布时间】:2012-11-06 01:44:52
【问题描述】:

我已经使用 joomla 一年多了,并且对 MVC 模式也很熟悉。但我不清楚 Joomla 在显示视图时如何使用 MVC。在组件中,开发者使用以下两种方法。

第一种方法

class myView extends JView
{
     function display($tpl = null)
     {                  
       //HTML & PHP goes here
     }  

}

第二种方法

class myView extends JView
{
        function display($tpl = null)
            {                   
            parent::display($tpl);
            }   

}

在第二种方法中,他们创建一个tmpl 文件夹并在其中放置一个default.php。然后所有的 HTML 和 PHP 代码都进入该文件。

现在的问题是,当我们可以立即使用第一种方法时,为什么他们使用第二种方法?行业标准是什么?上述方法的优缺点是什么?应该使用什么以及为什么以及取决于什么?谢谢

【问题讨论】:

    标签: php html model-view-controller design-patterns joomla


    【解决方案1】:

    没有“行业标准”。但是MVC有“关注点分离”这样的概念。

    第二种方法更接近受 MVC 启发的模式的精神。视图应该负责 UI 逻辑。并且,如果此逻辑需要生成响应,请查看多个模板来创建它。或者它可能会选择只发送一个 HTTP 标头。

    第一种方法是“quick'n'dirt”版本。这通常意味着 UI 逻辑已在控制器中泄漏。或者,那个开发者不明白为什么意大利面条代码是一件坏事。

    【讨论】:

      【解决方案2】:

      看起来第二种方法正在调用父级,因此它正在调用模板的基础部分。通常,您有一个基本模板,然后是使用该基本模板的单个内容(页面)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-14
        • 1970-01-01
        • 1970-01-01
        • 2013-07-08
        相关资源
        最近更新 更多