2017 © Pedro Peláez
 

library yii2-upload-behavior

Yii2 file/image upload behavior

image

pafnow/yii2-upload-behavior

Yii2 file/image upload behavior

  • Tuesday, November 11, 2014
  • by pafnow
  • Repository
  • 1 Watchers
  • 0 Stars
  • 17 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Yii2 file/image upload behavior for ActiveRecord

FileUploadBehavior

This behavior allow you to add file and image uploading logic with ActiveRecord behavior., (*1)

Usage

Attach the behavior to your model class:, (*2)

public function behaviors()
{
    return [
        'file-upload' => [
            'class' => '\lagman\upload\FileUploadBehavior',
            'attribute' => 'fileUpload',
            'filePath' => '[[web_root]]/uploads/[[id]].[[extension]]',
            'fileUrl' => '/uploads/[[id]].[[extension]]',
        ],
    ];
}

Possible path/url placeholders:, (*3)

  • [[app_root]] - application root
  • [[web_root]] - web root
  • [[model]] - model name
  • [[id]] - model id
  • [[id_path]] - id subdirectories structure
  • [[parent_id]] - parent object primary key value
  • [[basename]] - original filename with extension
  • [[filename]] - original filename without extension
  • [[extension]] - original extension
  • [[base_url]] - site base url

Add validation rule:, (*4)

public function rules()
{
    return [
        ['fileUpload', 'file'],   
    ];
}

Setup proper form enctype:, (*5)

$form = \yii\bootstrap\ActiveForm::begin([
    'enableClientValidation' => false,
    'options' => [
        'enctype' => 'multipart/form-data',
    ],
]);

File should be uploading fine., (*6)

You can get uploaded file url using model call:, (*7)

echo $model->getUploadedFileUrl('fileUpload');

ImageUploadBehavior

Image upload behavior extends file upload behavior with image thumbnails generation. You can configure set of different thumbnail profiles to generate., (*8)

Usage

Attach the behavior to your model class:, (*9)

public function behaviors()
{
    return [
        'image-upload' => [
             'class' => '\lagman\upload\ImageUploadBehavior',
             'attribute' => 'imageUpload',
             'thumbs' => [
                 'thumb' => ['width' => 400, 'height' => 300],
             ],
             'filePath' => '[[web_root]]/images/[[model]]/[[id]].[[extension]]',
             'fileUrl' => '/images/[[model]]/[[id]].[[extension]]',
             'thumbPath' => '[[web_root]]/images/[[model]]/[[profile]]_[[id]].[[extension]]',
             'thumbUrl' => '/images/[[model]]/[[profile]]_[[id]].[[extension]]',
        ],
    ];
}

Possible path/url placeholders:, (*10)

  • [[app_root]] - application root
  • [[web_root]] - web root
  • [[model]] - model name
  • [[id]] - model id
  • [[id_path]] - id subdirectories structure
  • [[basename]] - original filename with extension
  • [[filename]] - original filename without extension
  • [[extension]] - original extension
  • [[base_url]] - site base url
  • [[profile]] - thumbnail profile name

Add validation rule:, (*11)

public function rules()
{
    return [
        ['imageUpload', 'file', 'types' => 'jpeg, gif, png'],   
    ];
}

Setup proper form enctype:, (*12)

$form = \yii\bootstrap\ActiveForm::begin([
    'enableClientValidation' => false,
    'options' => [
        'enctype' => 'multipart/form-data',
    ],
]);

File should be uploading fine., (*13)

You can get uploaded image url using model call:, (*14)

echo $model->getUploadedFileUrl('imageUpload');

You can also get generated thumbnail image url:, (*15)

echo $model->getThumbFileUrl('imageUpload', 'thumb');

Licence

MIT, (*16)

Contacts

  • https://github.com/russianlagman/yii2-upload-behavior
  • https://packagist.org/packages/lagman/yii2-upload-behavior

The Versions

11/11 2014

dev-master

9999999-dev

Yii2 file/image upload behavior

  Sources   Download

BSD 3-Clause

The Requires

 

by Avatar pafnow

file upload behavior image resize thumb