Yii2 Tips 21 : Mengupload Multiple Files dengan FileInput Widget
Untuk mengupload multiple files dengan fileinput widget cukup memodifikasi sedikit dari Tips sebelumnya. Yang perlu dimodifikasi adalah pada _form.php,
1 |
<?= $form->field($model, 'namafile') |
menjadi array :
1 |
<?= $form->field($model, 'namafile[]') |
kemudian tambahkan berapa file yang bisa diupload dalam suatu waktu :
1 |
'maxFileCount'=> 10, |
Dan aktifkan multiple upload :
1 |
'options' => ['multiple'=>true, 'accept' => ''] |
Sehingga _form.php menjadi :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<?= $form->field($model, 'namafile[]')->widget(FileInput::className(),[ 'options' => ['multiple'=>true, 'accept' => ''] 'pluginOptions' => [ 'showRemove'=> false, 'showUpload' => false, 'showCancel' => false, 'overwriteInitial' => false, 'initialPreviewConfig' => $json, 'previewFileType' => 'image', 'initialPreview' => $img, 'uploadAsync'=> true, 'maxFileSize' => 3*1024*1024, 'deleteUrl' => Url::to(['/file/delete-upload']), 'allowedExtensions' => ['jpg','png','jpeg'], 'maxFileCount'=> 10, ] ])?> <?php else : ?> <?= $form->field($model, 'namafile[]')->widget(FileInput::classname(), [ 'options' => ['multiple'=>true, 'accept' => ''] 'pluginOptions' => [ 'showUpload' => false, 'maxFileCount'=> 10, ] ]); ?> |
Ubah actionCreate pada Controller, dari getInstance menjadi getInstances Read more about Yii2 Tips 21 : Mengupload Multiple Files dengan FileInput Widget[…]