Yii TBGridview中的十进制格式


Decimal Format in Yii TBGridview

我有这样的代码:

<?php 
$this->widget('bootstrap.widgets.TbGridView',array(
'id'=>'appliances-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
        array(
            'name'=>'price',
            'type'=>'number',
            'htmlOptions'=>array('style' => 'text-align: right;'),
        ),
        array(
            'class'=>'bootstrap.widgets.TbButtonColumn',
            'template'=>'{update}{delete}'
        ),
    ),
)); 
?>

结果只是整数,搜索过滤器有效,如何将其更改为十进制格式,但搜索过滤器仍然有效
我试着把它改成:

array(
    'name'=>'price',
    'type'=>'number',
    'htmlOptions'=>array('style' => 'text-align: right;'),
    'value'=>function($data)
             {
                return number_format($data->price,2,',','.');
             },
),

但它使搜索过滤器无法正常工作。

我在这里找到了答案:

  1. Yii数字格式
  2. 如何使用C.Gridview格式化数字字符串-Yii

我还发现了这个链接Yii,在cgridview 中显示不同的日期格式

Try This:-  
  $this->widget('zii.widgets.grid.CGridView', array(
        'dataProvider' => $dataProvider,
        'columns'      => array(
            'cost',          // display the 'cost' attribute
            array(           // display the 'cost_in_dollars' using an expression
                'name'  =>  'cost_in_dollars',
                'value' =>  'number_format($data->cost/100, 2)',
            ),
        ),
    ));