yiiext/file-upload-action
Composer 安装命令:
composer require yiiext/file-upload-action
包简介
File upload action
README 文档
README
Usage
// add action to controller public function actions() { return array( // ... 'upload'=>array( 'class' => 'ext.yiiext.actions.fileUpload.EFileUploadAction', // The data model which contains file attribute with validation rules. 'model' => null, // The model attribute. 'attribute' => null, // The input field name. This must be resolve from model and attribute. 'name' => 'upload-file', // Try create directory if not exists. Defaults to false. 'createDirectory' => false, // Which means the widest possible access. 'createDirectoryMode' => 0644, // Which create directories recursive. 'createDirectoryRecursive' => false, // The rule for generate filename. // i.e. 'filenameRule' => 'md5($file->name) . "." . $file->extensionName', 'filenameRule' => null, // The filename. If not set will be copied original filename. 'filename' => null, // The directory where save files. 'path' => null, 'onBeforeUpload' => function ($event) { // Change default path via event. $event->sender->path=Yii::getPathOfAlias('webroot') . '/files'; }, 'onBeforeSave' => function ($event) { // Add error and cancel uploading. $event->sender->addError(Yii::t('yiiext', 'Process stopped!')); $event->isValid = false; }, 'onAfterSave' => function($event) { // i.e. make thumb for uploaded image. } 'onAfterUpload' => function ($event) { if($event->sender->hasErrors()) { // Show error if exists. echo implode(', ', $event->sender->getErrors()); } else { // Return url. echo str_replace(Yii::getPathOfAlias('webroot'), '', $event->sender->path) . '/' . $event->sender->filename; } // Stop application. exit; } ), // ... ); }
Events
Action has 4 events and runs in the following order:
- onBeforeUpload - this event is mainly intended to change the default settings for the action: save path, file name, etc.
- onBeforeSave - intended for a more detailed validation of the downloaded file, what can be done by means of the model.
This event can be canceled to save the file by setting the
$event->isValid = false - onAfterSave - an event designed to manipulate already saved file.
- onAfterUpload - in this event are invited to check the load, save or no. And show the error.
统计信息
- 总下载量: 936
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 21
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD
- 更新时间: 2015-03-07