0

我编写了自己的 Magento 函数,它计算订单与退货的百分比关系。通过这种方式,您可以将客户分类为那些从不退还购买的东西(绿色 - 好客户)、有时会返回(黄色)和那些退回大部分购买的东西(红色 - 坏客户)的客户。

为此,我添加了一个保存所需信息的新数据库表。

现在,我想在 Magento 的管理客户->管理客户中添加一个新列,该列显示适当的颜色。我设法添加了新列的标题,但我不知道如何从我的自定义数据库表中显示我的自定义计算。Magento 让一切变得如此复杂。

我编辑了“app/code/core/Mage/Adminhtml/Block/Customer/Grid.php”并将以下代码添加到“prepareColumns”中:

    $this->addColumn('abc', array(
      '标题' => "ABC"
    ));

那么,如何用任何数据填充它?

我很感激任何帮助。

4

2 回答 2

1

最简单的解决方案是prepareCollection在同一个类中编辑函数,并将您的表连接到结果集。然后你只需要在你的addColumn定义中设置正确的索引并且应该填充列。

理想情况下,您当然不应该编辑核心文件,更好的选择是改写类,或者您可以全力以赴并使用 events 来完成

于 2012-10-01T21:27:40.307 回答
0

那么您可能知道该怎么做吗?所有参数到底是什么意思?:

    ->joinAttribute('billing_telephone', 'customer_address/telephone', 'default_billing', null, 'left')

请给我任何建议。比方说,我会为每个客户创建一个原始 SQL 查询,进行一些计算并将其输出。我只需要客户的 id 就可以做到这一点。

于 2012-10-02T05:31:40.487 回答