您可以在模型中覆盖CActiveRecord 的 afterFind() 方法并格式化其中的value
字段。
或者,您也可以声明模型的虚拟属性,并在 afterFind() 方法中设置它,并在视图中使用此虚拟属性。
示例(具有虚拟属性):
Class ChargesModel extends CActiveRecord{
public $valueModified;
/*
* other code
*/
protected function afterFind(){
parent::afterFind();
// in the following line i'm just making $valueModified and $value equal, but obviously you would have to insert the 2 decimals
$this->valueModified=$this->value;
}
}
然后你可以像这样访问虚拟属性:$modelObject->valueModified
我建议您使用 virtual 属性,因为您同时拥有 unmodified$value
和 modified $modifiedValue
,一旦格式化完成,我们可以根据需要使用其中任何一个,而不需要在需要原始时重新格式化回原始。