代码之家  ›  专栏  ›  技术社区  ›  Castro Roy

Magento自定义管理模块为空

  •  6
  • Castro Roy  · 技术社区  · 14 年前

    我已经创建了一个自定义管理模块,但是我不能在其中放置内容,它总是空白的。 我试着用一个简单的测试代码,但似乎没有什么效果。

    public function indexAction()
    {
        $this->loadLayout();
    
        $this->_addContent($this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml')->toHtml());
        $this->renderLayout();
    }
    

    在.phtml中

    echo 'hello world';
    

    但不打印任何内容,如果a在phtml中出错,系统崩溃,这意味着它正在获取文件,但是,我缺少的是 请帮助

    1 回复  |  直到 14 年前
        1
  •  10
  •   Alana Storm    14 年前

    这个 $this->_addContent 管理控制器上的方法应传递一个块对象。

    protected function _addContent(Mage_Core_Block_Abstract $block)
    {
        $this->getLayout()->getBlock('content')->append($block);
        return $this;
    }
    

    你进来了

    $this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml')->toHtml()
    

    它是一个字符串。你渲染得太快了。如果您检查日志,您应该看到一个警告/错误/一些东西,告诉您参数 _addContent 是意外类型。

    尝试不使用tohtml方法调用

    $this->_addContent($this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml'));