2017 © Pedro Peláez
 

yii2-extension yii2-upload-file

Yii2 upload file tools

image

mdmsoft/yii2-upload-file

Yii2 upload file tools

  • Thursday, April 27, 2017
  • by mdmunir
  • Repository
  • 10 Watchers
  • 64 Stars
  • 9,506 Installations
  • PHP
  • 5 Dependents
  • 0 Suggesters
  • 27 Forks
  • 5 Open issues
  • 8 Versions
  • 9 % Grown

The README.md

Yii2 Upload File

Yii2 tools for upload file, (*1)

Installation

The preferred way to install this extension is through composer., (*2)

Either run, (*3)

php composer.phar require mdmsoft/yii2-upload-file "~2.0"

for dev-master, (*4)

php composer.phar require mdmsoft/yii2-upload-file "dev-master"

or add, (*5)

"mdmsoft/yii2-upload-file": "~2.0"

to the require section of your composer.json file., (*6)

Usage

Once the extension is installed. Prepare required table by execute yii migrate., (*7)

yii migrate --migrationPath=@mdm/upload/migrations

if wantn't use db migration. you can create required table manually., (*8)

CREATE TABLE uploaded_file (
    "id" INT NOT NULL AUTO_INCREMENT,
    "name" VARCHAR(64),
    "filename" VARCHAR(256),
    "size" INT,
    "type" VARCHAR(32),
    PRIMARY KEY (id)
);

Modify your application configuration as follows:, (*9)

return [
    ...
    'controllerMap' => [
        'file' => 'mdm\\upload\\FileController', // use to show or download file
    ],
];

Then simply modify your Model class:, (*10)

public function behaviors()
{
    return [
        ...
        [
            'class' => 'mdm\upload\UploadBehavior',
            'attribute' => 'file', // required, use to receive input file
            'savedAttribute' => 'file_id', // optional, use to link model with saved file.
            'uploadPath' => '@common/upload', // saved directory. default to '@runtime/upload'
            'autoSave' => true, // when true then uploaded file will be save before ActiveRecord::save()
            'autoDelete' => true, // when true then uploaded file will deleted before ActiveRecord::delete()
        ],
    ];
}

You dont need add extra attribute file to model class. In controller, (*11)

public function actionCreate()
{
    if($model->load(Yii::$app->request->post()) && $model->save()){
        ...
    }
    ...
}

If you set mdm\upload\UploadBehavior::$autoSave to false you must call saveUploadedFile()., (*12)

public function actionCreate()
{
    if($model->load(Yii::$app->request->post()) && $model->validate()){
        if($model->saveUploadedFile() !== false){
            $model->save(false);
            ....
        }
        ...
    }
    ...
}

In view file, (*13)

// in create or update view
= $form->field($model,'file')->fileInput(); ?>


// in view
= Html::img(['/file','id'=>$model->file_id]) ?>
<!-- assume the uploaded file is image ->

Using Without Attach Behavior

Instead of using as behavior, you can also directly save file using FileModel., (*14)

public function actionCreate()
{
    ...
    if($model->load(Yii::$app->request->post()) && $model->validate()){
        $file = UploadedFile::getInstance($model, 'file');
        if($fileModel = FileModel::saveAs($file,['uploadPath' => '@common/upload'])){
            $model->fil_id = $fileModel->id;
            $model->save();
            ....
        }
        ...
    }

}

But, you need to add attribute file to Model., (*15)

class MyModel extend ...
{
    public $file; // add this to your model class

The Versions

27/04 2017

dev-master

9999999-dev

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

07/11 2016

2.0

2.0.0.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

26/10 2015

1.3

1.3.0.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

23/07 2015

1.2

1.2.0.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

19/12 2014

1.1.0

1.1.0.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

03/11 2014

1.0.2

1.0.2.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

03/11 2014

1.0.1

1.0.1.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii

21/10 2014

1.0.0

1.0.0.0

Yii2 upload file tools

  Sources   Download

BSD-3-Clause

The Requires

 

by Misbahul Munir

file upload yii