Magento 管理网格将数据从 Action 发送到 Controller

标签 magento grid action adminhtml

我正在尝试编写一个自定义操作来运行我构建的管理网格。是否可以通过 get 或 post 将网格中的列中的值发送到 Controller ?

我尝试过谷歌搜索,但在任何地方都找不到正确的解释。如果可用的话,指向列设置(“getter”、“type”等)说明的链接也会很有用。

最佳答案

将此代码添加到您的 Grid.php 中:

        $this->addColumn('action',
            array(
            'header'    =>  Mage::helper('yourmodulename')->__('Action'),
            'width'     => '100',
            'type'      => 'action',
            'getter'    => 'getId',
            'actions'   => array(
                    array(
                            'caption'   => Mage::helper('yourmodulename')->__('Edit'),
                            'url'       => array('base'=> '*/*/edit'),
                            'field'     => 'id'
                    )
            ),
            'filter'    => false,
            'sortable'  => false,
            'index'     => 'stores',
            'is_system' => true,
    ));

这将构建一个“编辑”URL,并将所选行的 ID 作为 URL 的一部分。它看起来像 <frontname>/<controllername>/edit/id/<value>哪里value由 getter getId() 返回。

getter 字段将执行任何标准的 Magento magic getter,即任何属性都是可获取的。所以你可以有getNamegetProductUrlgetIsLeftHanded如果您愿意并且您的 Controller 可以解析该属性。

然后 Controller 可以使用 Mage::app()->getRequest()->getParam('attributename'); 检索传递的值

就文档/教程而言,请阅读 this article在@AlanStorm 的网站上,因为它可能会有所帮助。

HTH,
京东

关于Magento 管理网格将数据从 Action 发送到 Controller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5728842/

相关文章:

grid - Bootstrap 3 使用 SASS mixin 更改特定容器上的网格列数和装订线宽度

objective-c - 将 NSMenuItems 与 Actions 连接起来,反之亦然

javascript - jQuery - 如何创建可撤消的操作?

WCF OperationContract-Action和ReplyAction的意义是什么?

php - Magento - 覆盖 Adminhtml block

javascript - 如何随机激活网格中的多个单元格

Magento 自定义模块 - 如何添加带有父类别的自定义选择框

angular - kendo-grid加载时如何显示kendo加载图标?

Magento 仅对匹配商品免运费 - 使用基于订单总额的表费率

Magento 1.7 - 以编程方式设置客户组价格