【问题标题】:Magento Collection/Grid - Rename field/column valuesMagento Collection/Grid - 重命名字段/列值
【发布时间】:2012-03-19 02:35:11
【问题描述】:

我正在创建一个发货箱报告,让管理员可以查看每个箱子需要多少个才能发货当天的订单。我已经保存了每批货物的内部包装箱代码。问题是这些代码类似于“SPECIAL_PKG”或“SHIPPING_PKG_1”,但管理员应该看到的是人性化的名称。

使用典型的 Mysql4 集合收集结果并显示在 Mage_Adminhtml_Block_Report_Grid 中。一切正常,除了我看到的是内部代码而不是友好名称。

有没有办法在集合结果显示之前重命名代码?例如,如果我可以获得这样的数组..

array(
    'SPECIAL_PKG' => 'Custom Packaging',
    'SHIPPING_PKG_1' => 'Large Box'
)

.. 那我可以用它来改变报告上显示的值吗?

不幸的是,我无法执行 SQL JOIN 来获取这些人性化的名称,因为数据不存在于单个标准化表中。如果可以的话,我会的。

【问题讨论】:

    标签: php magento collections


    【解决方案1】:

    知道了!我需要通过扩展Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract 来实现自定义渲染器。以this article 为指导,效果很好!

    如果它可以帮助任何有类似问题的人:我使用构造函数来创建数组(如我上面的问题所示)。然后,在render() 内部,我检查密钥是否存在并改为显示对人类友好的数据。

    【讨论】:

      【解决方案2】:

      有一种更简单的方法,您的问题与此完全相同:How do I render/format custom fields in the Customer Grid - backend Magento 1.6

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-02-06
        • 2016-08-23
        • 2020-08-20
        • 1970-01-01
        • 1970-01-01
        • 2016-02-28
        • 2016-04-02
        相关资源
        最近更新 更多