PHPackages                             laco-agency/uploader - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. laco-agency/uploader

ActiveYii2-extension[File &amp; Storage](/categories/file-storage)

laco-agency/uploader
====================

Yii2 file uploader

v0.4.0(6y ago)0341MITPHP

Since Jun 12Pushed 6y ago2 watchersCompare

[ Source](https://github.com/laco-agency/uploader)[ Packagist](https://packagist.org/packages/laco-agency/uploader)[ Docs](http://github.com/laco-agency/uploader)[ RSS](/packages/laco-agency-uploader/feed)WikiDiscussions master Synced yesterday

READMEChangelog (10)Dependencies (3)Versions (15)Used By (0)

uploader
========

[](#uploader)

yii2 file uploader

Installation
------------

[](#installation)

The preferred way to install this extension is through [composer](http://getcomposer.org/download/).

Either run

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

```

or add

```
"laco-agency/uploader":"*"
```

to the require section of your composer.json.

Usage
-----

[](#usage)

Add module to config file

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

Attach UploadBehavior to model and configere file attributes

```
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'],
        ];
    }
}
```

Image file input
----------------

[](#image-file-input)

In view file

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