0
某些類具有名爲status
(可以是0或1)的屬性。在相應的模型中,我定義了兩個變量STATUS_CLOSED = 1
和STATUS_OPEN = 2
。Yii - 使用模型函數(使用模型屬性)的CDetailView值
我使用的是CDetailView顯示內部的「查看」視圖類似車型檔案:
$this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
'account_number',
'account_type',
array(
'label'=>'Banco',
'type'=>'raw',
'value'=>CHtml::encode($model->bank->bank_name),
),
),
));
我在模型中定義這兩個函數:
public function statusLabels()
{
return array(
self::STATUS_CLOSED => 'Inactiva',
self::STATUS_OPEN => 'Activa',
);
}
public function getStatusLabel($status)
{
$labels = self::statusLabels();
if (isset($labels[$status])) {
return $labels[$status];
}
return $status;
}
我需要定製CDetailView(可能使用這兩個函數)根據狀態值顯示相應的標籤。
我想這會工作:
$this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
'account_number',
'account_type',
array(
'label'=>'Estado',
'type'=>'raw',
'value'=>$model->statusLabel($model->status),
),
),
));
,但我得到:Missing argument 1 for BankAccount::getStatusLabel()
我做錯了嗎?