为什么我不能在管理页面中调用模型的已定义函数

时间:2011-11-09 09:03:43

标签: php yii

将以下代码放入admin.php文件后,该代码无效。似乎actionAdmin没有预加载模型。我该如何解决?

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'templateset-grid',
    'dataProvider'=>$model->search(),
    'filter'=>$model,
    'columns'=>array(
        'id',
        'name',
        array(
                      'name'=>'disable',
                      'value'=>$model->numberToStatus(),
                ),
        array(
              'class'=>'CButtonColumn',
        ),
    ),
));

函数numberToStatus定义为

public function numberToStatus()
    {
            $disabled=Yii::t('myExtension', 'disabled');
        $non_disabled=Yii::t('myExtension', 'non-disabled');
        $statusArray=array($disabled, $non_disabled);
        return $statusArray[$this->disable];
    }

我尝试了很多方法但都失败了,你有什么想法吗?谢谢你的帮助。

1 个答案:

答案 0 :(得分:3)

你需要使用

'value' => '$data->numberToStatus()',