在控制器中你需要调用 只有文件上传字段的 myFileHandler
方法
public function actionIndex(){ ........ ........ $model = $this->myFileHandler($model, array('logo','emailus_img','emailus_img_hover','more_img','more_img_hover','gomo_logo','mobile_phone_img','animate_on_mobile_img','animate_above_text_img','animate_under_text_img','bottom_right_img')); ....... ....... }
public function myFileHandler($model, $imgFieldNameArr){ foreach($imgFieldNameArr as $attribute){ $instance = CUploadedFile::getInstance($model, $attribute); if($instance){ $fullImgName = time().'_'.$attribute.'.'.$instance->getExtensionName(); $fullImgSource = Yii::getPathOfAlias('webroot').'/media/images/'.$fullImgName; $instance->saveAs($fullImgSource); $model->$attribute = $fullImgName; } } return $model; //return model with updated file path }
希望这个小技巧将帮助您.