ejecutar este par de sentencias: 
composer require kartik-v/bootstrap-fileinput "@dev"
composer require kartik-v/yii2-widget-fileinput "@dev"
la idea es poder guardar  una imagen en una carpeta del sitio:
nuestro modelo tiene una campo que guarda solo el nombre del archivo: $image_name
vamos a crear un campo virtual llamado $image que hace referencia al archivo de imagen que se envia desde el formulario:
class Notifications extends \yii\db\ActiveRecord
{
    var $image;
para usarlo en una vista:
use kartik\file\FileInput;
<?= $form->field($model, 'image')->widget(FileInput::classname(), [
              'options' => ['accept' => 'image/*'],
               'pluginOptions'=>['allowedFileExtensions'=>['jpg','gif','png'],'showUpload' => false,],
          ]);   ?>
en el controller:
use yii\web\UploadedFile;
public function actionCreate() {
        $model = new Notifications ();
       
        if ($model->load ( Yii::$app->request->post () )) {
            $image = UploadedFile::getInstance ( $model, 'image' );
            if (!is_null( $image )) {
                $model->full_image_url = $image->name;
                $ext = end ( (explode ( ".", $image->name )) );
                // generate a unique file name to prevent duplicate filenames
                $model->full_image_url = Yii::$app->security->generateRandomString () . ".{$ext}";
                // the path to save file, you can set an uploadPath
                $uploadPath = Yii::$app->basePath . '/upload-folder/';
                $path = $uploadPath. $model->image_name;
                $image->saveAs ( $path );
            }
            if ($model->save ()) {
                return $this->redirect ( [ 
                        'view',
                        'id' => $model->id 
                ] );
            }
        } 
fuente:
https://github.com/kartik-v/yii2-widget-fileinput
Suscribirse a:
Enviar comentarios (Atom)
linux ubuntu mint actualizar chrome
desde una terminal: $ sudo apt update $ sudo apt install google-chrome-stable
- 
Vamos a crear un proyecto llamado SpringBoot01 para esto, -creamos un proyecto maven y configuramos el build path como vimos en el tutoria...
 - 
1) configurar datos de conexion app/config/parameters.yml # This file is auto-generated during the composer install parameters: da...
 - 
por consola y desde la raiz de tu proyecto php artisan --version
 
No hay comentarios:
Publicar un comentario