Magento,组的不同的背景颜色在后端栅格的行

Yar*_*lav 1 grid magento magento-1.7

在带有网格的后端管理页面上,我需要更改行组的背景颜色.默认情况下不是逐行替换颜色,而是根据已知列值着色组.

我正在研究这个问题:在管理员和其他类似页面中更改订单网格上的行颜色的方法.但是无法重现我需要的东西,因为这个问题指的是一个将重复的列中的值.

我需要为不同的组使用不同的颜色,或者至少使用这些组的替代颜色.

也许是这样的:

在此输入图像描述

Yar*_*lav 9

对于任何寻找解决方案的人.我在Inchoo网站上使用了本教程:为Magento网格中的自定义列添加自定义渲染器.有一些SO问题也有助于理解解决方案.

我没有设法改变最初想要的整行背景颜色,我只是修改单元格背景.但最后,足以指出用户这一行有些不同.我所做的是添加一个新的自定义列.在renderer属性上我引用了一个新类.

$this->addColumn('collision_type', array(
          'header'  => $helper->__('Collision'),
          'align'   => 'center',
          'index'   => 'collision_type',
          'type'    => 'action',
          'renderer'=> new Dts_Banners_Block_Adminhtml_Collisions_Grid_Renderer_Collisiontype(),
));
Run Code Online (Sandbox Code Playgroud)

我将所需的类放在一个新的子树中:

Grid
  ?? Renderer
        ?? Collisiontype.php
Run Code Online (Sandbox Code Playgroud)

这是应该呈现列的新类.要有不同的颜色,只需要评估$value变量并为相应的值应用不同的颜色样式,这就是我现在正在做的事情.

<?php
class Dts_Banners_Block_Adminhtml_Collisions_Grid_Renderer_Collisiontype extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
    public function render(Varien_Object $row) {
        $value =  $row->getData($this->getColumn()->getIndex());
        return '<div style="color:#FFF;font-weight:bold;background:#F55804;border-radius:8px;width:100%">'.$value.'</div>';
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

结果如下:

屏幕截图的网格与渲染列