'beforeUpdate', ActiveRecord::EVENT_BEFORE_INSERT => 'beforeInsert', ]; } public function beforeUpdate($event) { if ( ($image = UploadedFile::getInstance($this->owner, 'image')) ) { $this->owner->image = $image->name; } if(!$this->owner->image){ $this->owner->image = $this->owner->getOldAttribute('image'); } if ($image) { $imgDir = \Yii::getAlias('@storage/'.$this->directory.'/'); if(!is_dir($imgDir)) { mkdir($imgDir, 0755, true); } $image->saveAs(\Yii::getAlias('@storage/'.$this->directory.'/' . $image->name)); } } public function beforeInsert($event) { if ( ($image = UploadedFile::getInstance($this->owner, 'image')) ) { $this->owner->image = $image->name; } if ($image) { $imgDir = \Yii::getAlias('@storage/'.$this->directory.'/'); if(!is_dir($imgDir)) { mkdir($imgDir, 0755, true); } $image->saveAs(\Yii::getAlias('@storage/'.$this->directory.'/' . $image->name)); } } public function getImageFile() { return empty($this->owner->image) ? null : '/storage/'.$this->directory.'/'. $this->owner->image; } public function getImageUrl() { return empty($this->owner->image) ? null : '/storage/'.$this->directory.'/'. $this->owner->image; } }