Magento:核心前端动作控制器和块控制器之间的区别

时间:2012-01-17 11:46:36

标签: php magento

我目前正在开发一个自定义模块,我在其中有一个控制器,可以扩展Mage_Core_Controller_Front_Action来处理请求。该控制器加载并呈现我在xml布局文件中定义的块 这些块中的每一个都可以在类型字段中分配自己的块控制器。 我想知道的是,在为模板文件分配变量时,最佳做法是什么?假设我有一个我希望在模板上显示的产品列表。我是否在块控制器中创建了一个函数并在模板文件中调用此函数,还是应该将产品列表分配给核心控制器中的块? 我知道这个问题非常理论化,只是想知道每个选项的好处是什么以及Magento的最佳实践。

1 个答案:

答案 0 :(得分:1)

一般来说,良好的做法是尽可能地保持块“独立”。在这种情况下,这意味着在块控制器中分配模板/视图变量。这样就可以在不更改的情况下在其他页面上重复使用块,并将所有内容保存在一个位置。因此,如果指定块中的某些内容发生更改,则只需更改块控制器,否则您可能还需要更改前端控制器。 在某些情况下,该块使用来自前端控制器的数据。但这是一个特定的情况,应尽可能避免。