2

我已经使用 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 代码都进入该文件。

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

4

2 回答 2

0

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

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

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

于 2012-11-06T03:21:15.583 回答
0

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

于 2012-11-06T03:58:12.167 回答