Magento 1.9.2管理员添加街道列在客户的订单数报告

fhg3lkii  于 2023-10-19  发布在  其他
关注(0)|答案(1)|浏览(149)

我想添加一个“街道”列在管理→报告→客户的订单数量(Magento 1.9.2)。
我尝试在“app\code\core\Mage\Reports\Model\Resource\Customer\Orders\Collection.php”中添加join查询:

protected function _joinFields($from = '', $to = '')
{
    $this->joinCustomerName()
        ->groupByCustomer()
        ->addOrdersCount()                 
        ->addAttributeToFilter('main_table.created_at', array('from' => $from, 'to' => $to, 'datetime' => true))
        ->join(array('p' => 'sales/order_address'), 'main_table.entity_id = p.parent_id', array(
                'street'
        ));
    return $this;
}

在“app\code\core\Mage\Adminhtml\Block\Report\Customer\Orders\Grid.php”中:

$this->addColumn('street', array(
    'header'    => $this->__('street'),
    'sortable'  => false,
    'index'     => 'street'
));

我得到了主表数据,但没有得到我加入的字段。

我怎么才能正确地做到这一点?

ozxc1zmp

ozxc1zmp1#

在'app\code\core\Mage\Adminhtml\Block\Report\Customer\Orders\Grid.php'中,您必须包含将从相应模块获取数据的渲染器标签。

$this->addColumn('street', array(
    'header'    => $this->__('street'),
    'sortable'  => false,
    'index'     => 'street',
    'renderer'  => 'namespace_module/adminhtml_module_renderer_streetname',

));

您必须在渲染器路径中包含一个方法,该方法将返回街道名称。就这样

相关问题