Magento 自定义网格删除操作不起作用

Magento Custom Grid delete action not working

我有 Magento 自定义网格,它显示我的产品列表 我想在有人点击删除操作时删除我的产品。我已经在下面编写了我的操作代码,但是当我点击删除时它每次都不起作用它在使用 url (*/*/delete) 时显示 404 页面,当我将 url 更改为 (*/*/../../admin/catalog_product/delete) 它将转到仪表板页面但没有删除我的产品:

$this->addColumn('action',
            array(
                'header'    => 'Action',
                'width'     => '100px',
                'type'      => 'action',
                'getter'    => 'getId',
                'actions'   => array(
                    array(
                        'url'       => array('base'=> '*/*/edit'),
                        'field'     => 'id'
                    )
                )
            )
        )

任何解决我这个问题的方法都会对我很有帮助。

您还没有创建删除动作,尝试将上面的代码修改为:

$this->addColumn('action',
            array(
                'header'    => 'Action',
                'width'     => '100px',
                'type'      => 'action',
                'getter'    => 'getId',
                'actions'   => array(
                    array(
                        'url'       => array('base'=> '*/*/edit'),
                        'field'     => 'id'
                    ),
                    array(
                        'url'       => array('base'=> '*/*/delete'),
                        'field'     => 'id'
                    )
                )

我认为问题出在 url 制作上,尝试按照以下操作制作 url。

注意:根据您的 url 参数替换 param_id,根据您在助手中的模块名称替换模块名称。

 'actions'   => array(
                        array(
                        'caption' => Mage::helper('module_name')->__('Edit'),
                        'url'     => array(
                        'base'=>'*/*/edit',
                        'params'=> array('id'=>$this->getRequest()->getParam('param_id'))
                        ),'field'   => 'id'
                        ),

                        array(
                        'caption' => Mage::helper('module_name')->__('Delete'),
                        'url'     => array(
                        'base'=>'*/*/delete',
                        'params'=> array('id'=>$this->getRequest()->getParam('param_id'))
                        ),'field'   => 'id'
                        )

                        ),