Dalam menampilkan data melalui CGridView, kita mungkin ingin menampilkan suatu value di mana ada expressionnya.
Misalnya kita mempunyai field qty_in dan qty_out. Kita ingin menampilkan Tipe, jika qty_in lebih besar dari qty_out maka tipenya In. Jika sebaliknya maka tipenya Out.

Codingnya akan seperti berikut ini
<?php $this->widget(‘zii.widgets.grid.CGridView’, array(
    ‘id’=>’sn-history-grid’,
    ‘ajaxUpdate’=>false,
    ‘dataProvider’=>$model->search(),
    ‘filter’=>$model,
    ‘columns’=>array(
    …….

        array(
            ‘header’=>’Tipe’,
             ‘value’=> ‘($data->qty_in > $data->qty_out)? “In”:”Out” ‘,
        ),
     ……….
    ),
)); ?>

Kita juga dapat melakukan customisasi class css untuk highlight data yang baru saja diaktifkan misalnya
 $this->widget(‘zii.widgets.grid.CGridView’, array(
    ‘id’=>’revisi-sales-order-grid’,
    ‘ajaxUpdate’=>false,
    ‘dataProvider’=>$model->search(),
    ‘filter’=>$model,
    ‘rowCssClassExpression’=> ‘evenOdd($row,$data->revisi_so_id)’,
    ‘columns’=>array(
………….
function evenOdd($num,$the_id)
{
    $referer_id_var=”s_revisi-sales-order_referer_id”;
    $id_tmp=Yii::app()->user->getState($referer_id_var);
    $id_tmp= (int) $id_tmp;
    
    if ($the_id==$id_tmp)
    {
        return “row_hl”;
    }

    ($num % 2==0) ? $class = ‘odd’ : $class = ‘even’;
    return $class;
}
?

Tampilannya akan seperti berikut ini:

Artikel ini merupakan pembaruan dari http://www.proweb.co.id/articles/web_application/highlight_record_yang_habis_diakses_di_yii.html .

Informasi lebih lanjut silahkan mengunjungi http://www.yiiframework.com/doc/api/1.1/CGridView .

Kunjungi www.proweb.co.id untuk menambah wawasan anda.

Expression pada CGridView Yii