在Magento Grid中编辑项目时没有删除按钮

use*_*748 2 magento

我已经成功创建了我的第一个管理网格.添加新项目时,它可以正常工作.但是,当我想编辑一个项目时,奇怪的DELETE是,该按钮丢失了.更糟糕的是,当我单击SAVE按钮时,它会创建一个新项目,而不是保存当前项目.我做错了什么?

我不确定要查看哪个文件,因此我不知道必须在此处发布哪些代码.如果我把所有文件中的所有代码都放了,那就太多了.请指教.

更新:不确定原因,但现在SAVE按钮不再重新创建.所以我可以安静地编辑一个项目.但是,DELETE按钮仍然缺失.

Ric*_*ski 11

在比赛的后期,但希望这将有助于一个Google员工.

您的_objectId属性是否已正确设置为URL中的相应参数?

$this->_objectId = 'id';

其中ID指的是URL的这一部分:

/ module/adminhtml_controller/edit/id/1 /

查看父类Mage_Adminhtml_Block_Widget_Form_Container::__construct:

...
$objId = $this->getRequest()->getParam($this->_objectId);

        if (! empty($objId)) {
            $this->_addButton('delete', array(
                'label'     => Mage::helper('adminhtml')->__('Delete'),
                'class'     => 'delete',
                'onclick'   => 'deleteConfirm(\''. Mage::helper('adminhtml')->__('Are you sure you want to do this?')
                    .'\', \'' . $this->getDeleteUrl() . '\')',
            ));
        }
...
Run Code Online (Sandbox Code Playgroud)

我们可以看到如果$objId为空,则不会添加删除按钮.