2

我在网格中为订单项的订购件定义了此列:

        $this->addColumn('qty_ordered',
        array(
            'header'=> $this->__('Quantity'),
            'align' =>'right',
            'type=' => 'number',
            'index' => 'qty_ordered'
        )
    );

xxx http://img688.imageshack.us/img688/6690/scr031.jpg

如何显示没有小数的数量?

4

2 回答 2

2

一种方法是创建一个自定义模块

$this->addColumn('qty_ordered',
    array(
        'header'=> $this->__('Quantity'),
        'align' =>'right',
        'type=' => 'number',
        'index' => 'qty_ordered'
        'renderer' = new MageIgniter_RemoveQtyDecimals_Block_Adminhtml_Renderer_Date()
    )
);


 class MageIgniter_RemoveQtyDecimals_Block_Adminhtml_Renderer_Date extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action
 {
    public function render(Varien_Object $row)
     {
         return $this->_getValue($row);
     }

     public function _getValue(Varien_Object $row)
     {
         $val = $row->getData($this->getColumn()->getIndex());
         return intval($val);

     } 
 }

https://stackoverflow.com/a/12695286/1191288

于 2013-01-09T13:50:42.593 回答
1

我修改了 sku 数组定义,而不是创建 qty_ordered。

$collection = Mage::getResourceModel($this->_getCollectionClass())
    ->join(
    'sales/order_item',
    '`sales/order_item`.order_id=`main_table`.entity_id',
        array(
            'skus'  => new Zend_Db_Expr('group_concat( `sales/order_item`.sku, "(", floor(`sales/order_item`.qty_ordered), ")" SEPARATOR ", ")'),
        ));

我相信你可以sales/order_item在你的 qty_ordered 定义中使用 floor( .qty_ordered) 。

订单网格结果中的 SKU 列类似于:MBA001(2)、MOF004(1)

于 2014-08-13T02:34:25.553 回答