Php Magento:在销售订单网格中添加列,但不进行联接

Php Magento:在销售订单网格中添加列,但不进行联接,php,magento,Php,Magento,我需要在sales order adminhtml网格中添加一个自定义列。 由于我通过请求特定增量id的数据从外部REST API获取该网格的数据,因此我无法使用使用magento数据库连接所需表的教程 还有其他方式吗 function rendering_sales_order_row_before($rowdata) { $columnContent = $restapi->callByIncrementId($rowdata['increment_id']); $t

我需要在sales order adminhtml网格中添加一个自定义列。 由于我通过请求特定增量id的数据从外部REST API获取该网格的数据,因此我无法使用使用magento数据库连接所需表的教程

还有其他方式吗

function rendering_sales_order_row_before($rowdata)  {
    $columnContent = $restapi->callByIncrementId($rowdata['increment_id']);
    $this->addColumn("Custom Column", $columnContent);
}
(这段代码应该只是说明我的目标,我知道解决方案看起来会完全不同)

在magento有可能以优雅的方式实现这一点吗


编辑:我正在使用magento 1.9.2.1,这是一个好问题。我也有类似的问题。我通过为我的专栏使用自定义渲染器解决了这个问题

首先添加销售订单网格块XX\u模块名称\u块\u管理员HTML\u订单\u网格。重写Mage\u Adminhtml\u Block\u Sales\u Order\u网格,扩展它并通过重写_prepareColumns()方法添加列

然后添加自定义渲染器(XX_ModuleName_Block_Adminhtml_Sales_Order_Grid_Widget_renderer_MyColumn)并扩展Mage_Adminhtml_Block_Widget_Grid_Column_renderer_Abstract

覆盖渲染(Varien_对象$row)方法。在这里,您可以执行特定的操作(执行api请求,以任何方式进行操作)并返回字符串。要生成请求,您需要按param$row使用数据


如果您需要更多信息,请发表评论。

我的建议是,如果您将此发布到网站上,您将获得更好的解决方案。谢谢,我尝试了一下,希望这是可以的,因为重复发布。谢谢,这对我有帮助。与其他答案一起,我成功创建了自己的渲染器。很高兴它有帮助:)正如我从您的另一个问题中看到的,您试图避免重写核心网格。有一个选项,但请创建一个新问题。
$this->addColumn('my_column', array(
        'header' => Mage::helper('sales')->__('My Column'),
        'width' => '80px',
        'index' => 'my_column',
        'type' => 'text',
        'order' => 'x',
    ));