1

您好,我在进入管理页面时不断收到以下错误

PHP 致命错误:在第 66 行的 app/code/core/Mage/Adminhtml/Block/Widget/Grid/Container.php 中的非对象上调用成员函数 setSaveParametersInSession()

这是我的控制器:

class LTS_Categorymove_Adminhtml_BlacklistController extends Mage_Adminhtml_Controller_Action{

public function indexAction(){
    $this->loadLayout();

    var_dump(Mage::getSingleton('core/layout')->getUpdate()->getHandles());

    $this->renderLayout();
}

}

这是我的主要块:

class LTS_Categorymove_Block_Adminhtml_Main extends Mage_Adminhtml_Block_Widget_Grid_Container{

protected $_addButtonLabel = 'Add New Example';

public function __construct(){
    //error_log('fgboo');
    $this->_controller = 'adminhtml_main';
    $this->_blockGroup = 'categorymove';
    $this->_headerText = 'Blacklist';
    $this->_addButtonLabel = 'Button Here';
    parent::__construct();
}


protected function _prepareLayout(){
    $this->setChild( 'grid',
       $this->getLayout()->createBlock( $this->_blockGroup.'/' . $this->_controller . '_grid',
       $this->_controller . '.grid')->setSaveParametersInSession(true) );
   return parent::_prepareLayout();
}

}

现在,当我用谷歌搜索这个问题时,每个人都一直说它是一个不正确的 _controller 声明,但从阅读中他们说我应该使用我所在的块名称。任何帮助都会很棒谢谢

4

1 回答 1

2

再次检查您的文件夹结构以确保所有文件都位于正确的路径。

在我的情况下,该文件被放置在错误的位置。我放置了Grid.phpincontroller/Adminhtml文件夹而不是Block/Adminhtml/<modulename>/Grid.php

于 2014-01-28T06:22:52.640 回答