从magento中的控制器加载块,缓存问题?

时间:2013-04-09 21:08:20

标签: php magento controller block

我的控制器里面有两个方法,我打电话来获取各种ajax更新的html。

    protected function _getDemoShippingMethodsHtml()
    {
        $layout = $this->getLayout();
        $update = $layout->getUpdate();
        $update->load('checkout_onepage_demoshippingmethod');
        $layout->generateXml();
        $layout->generateBlocks();
        $output = $layout->getOutput();

        return $output;
    }

    protected function _getSelectedDealerHtml()
    {
        $layout = $this->getLayout();
        $update = $layout->getUpdate();
        $update->load('checkout_onepage_selecteddealer');
        $layout->generateXml();
        $layout->generateBlocks();
        $output = $layout->getOutput();

        return $output;
    }

在向控制器发出一个请求期间,如果我只调用其中一种方法,则会按预期加载块。问题出在我尝试在一个请求期间调用这两个函数的地方。首先调用哪个方法输出预期的html,第二个方法调用输出与第一个完全相同的html。

2 个答案:

答案 0 :(得分:0)

在您使用的块类中创建一个空的伪构造函数 受保护的函数_construct(){}

答案 1 :(得分:-1)

尝试以编程方式使用干净缓存 法师::应用程序() - > cleanCache();

Clear Magento cache