什么是loadlayout()和renderlayout()呢? 在控制器'功能
中 public function viewAction()
{
$this->loadLayout();
$this->renderLayout();
}
答案 0 :(得分:1)
$this->renderLayout();
获取布局输出并将此输出处理到响应正文并附加响应
$this->loadLayout();
在后端创建XML树。
答案 1 :(得分:0)
当您调用Action Controller的loadLayout方法时,Magento将
(a) Instantiate a Block class for each <block /> tag, looking up the class using the tag's type attribute as a global config path and store it in the internal _blocks array of the layout object, using the tag's name attribute as the array key.
(b) If the <block /> tag contains an output attribute, its value is added to the internal _output array of the layout object.
然后,当您在Action Controller中调用renderLayout方法时, Magento将使用output属性的值作为回调方法迭代_output数组中的所有块。
这总是toHtml,并且意味着输出的起点将是Block的模板。
干杯; - )