laco-agency/uploader

Yii2 文件上传器

安装: 340

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

公开问题: 0

类型:yii2-extension

v0.4.0 2020-03-19 08:02 UTC

This package is auto-updated.

Last update: 2024-09-29 04:14:28 UTC


README

yii2 文件上传器

安装

安装此扩展的首选方式是通过 composer.

运行以下命令之一:

composer require --prefer-dist laco-agency/uploader

或者

"laco-agency/uploader":"*"

将以下内容添加到你的 composer.json 文件的 require 部分。

使用方法

将模块添加到配置文件

 'uploader' => ['class' => '\laco\uploader\Module'],

将 UploadBehavior 绑定到模型并配置文件属性

use laco\uploader\processor\ImageProcessor;
use laco\uploader\storage\ModelStorage;
use laco\uploader\storageFile\StorageFile;
use laco\uploader\behaviors\UploadBehavior;

class Model extends yii\db\ActiveRecord
{

 public function behaviors()
    {
        return [
            [
                'class' => UploadBehavior::className(),
                'uploadAttributes' => [
                    'image_preview' => [
                        'class' => StorageFile::className(),
                        'storage' => ModelStorage::className(),
                        'processOptions' => [
                            'origin' => [
                                'class' => ImageProcessor::className(),
                                'width' => 912,
                                'height' => 570,
                                'crop' => true
                            ],
                            'thumb' => [
                                'class' => ImageProcessor::className(),
                                'width' => 244,
                                'height' => 138,
                                'crop' => true
                            ],
                        ]
                    ],                   
                ]
            ]
        ];
    }
 
   
   // Configure validation rules for files attributes as regular   
    public function rules()
    {
        return [
            [['image_preview'], 'image'],
        ];
    }
}

图像文件输入

在视图文件中

use \laco\uploader\widgets\image\Image;

    <?= $form->field($model, 'image_preview')->widget(Image::className(),
    ['imageUrl' => $model->getFileUrl('image_preview', 'thumb')]); ?>

TinyMCE

在视图文件中

use laco\uploader\widgets\tinymce\TinyMce;

<?= $form->field($model, 'content')->widget(TinyMce::className()); ?>