开发过包含后台Grid及表等Magento完整模块的朋友应该知道,默认的,在Magento后台Grid右上方都会包含一个Add New按钮,用来添加新的item。但有些情况我们也可能不需要这个Add New按钮。在Ruiwant_Consult产品咨询插件中,后台Grid用于显示客户对产品不同类别的问题。在这种情况下,管理员只需要查看客户提出的问题,而不用自己添加新的问题,Add New就没有存在的必要了。

ruiwant-magento-admin-grid

如上图所示,右侧Search上面的Add New按钮就不存在了。删除该按钮非常简单,代码如下。在继承Mage_Adminhtml_Block_Widget_Grid_Container类的文件中,一般该文件位于block下adminhtml里。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
class Ruiwant_Consult_Block_Adminhtml_Consult_Index extends Mage_Adminhtml_Block_Widget_Grid_Container
{
    public function __construct()
    {
        $this->_controller = 'adminhtml_consult_index';
        $this->_blockGroup = 'consult';
        $this->_headerText = Mage::helper('consult')->__('Product Question List');
        $this->_addButtonLabel = Mage::helper('consult')->__('Add New Question');
 
        parent::__construct();
        //加入下面一行
        $this->_removeButton('add');
    }
}

Magento Edit页面,还包含了保存、返回和删除按钮,去除这些按钮的方式如下所示。

01
02
03
04
05
06
07
08
09
10
11
class Ruiwant_Consult_Block_Adminhtml_Consult_Index_Form_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
{
    public function __construct()
    {
        ......
        parent::__construct();
        $this->_removeButton('delete');
        $this->_removeButton('save');
        $this->_removeButton('back');
    }
}
posted on 2015-03-27 10:16  闪电王国  阅读(454)  评论(0编辑  收藏  举报