Llenar la bbdd con datos de prueba
Comprar curso

10. Llenar la bbdd con datos de prueba


20 comentarios

Inicia sesión para comentar

Comentarios:

  • Emerson Domínguez

    Emerson Domínguez hace 1 mes

    Buen día Víctor o quien pueda aportarme, tengo este problema, he seguido todos los pasos para guardar las imágenes y si se guardan en la carpeta, ahora, cuando deseo mostrarlas ya en el front no me las muestra y la url que genera creo que no es la adecuada, supongo que por eso no las muestra, como puedo solucionar esto, estoy utilizando laravel 10, saludos y gracias de antemano

    Archivo ImageFactory.php

    'url' => 'cursos/'. $this->faker->image('public/storage/cursos',640,480,null,true)

    archivo DatabaseSeeder.php

     Storage::deleteDirectory('cursos');

     Storage::makeDirectory('cursos');

    Url que llama en el front en el archivo Welcome.blade.php

    {{Storage::url($course->image->url)}}

    /storage/cursos/public/storage/cursos\ed3f762557ebf401875d8772f2550ff1.png

    En la base de datos se almacena asi en la tabla Images

    cursos/public/storage/cursos\f5277f3e5e6f2d16747a95565405024a.png

    • Victor Arana Flores hace 1 mes

      Hola Emerson, estas trabajando en el disco local, por eso te devuelve la url de esa forma.

      Para trabajar en el disco public como en el curso, dirigete a tu archivo .env busca la variable FILESYSTEM_DISK y asignale el valor de public.

      Tambien asegurate que dentro de la carpeta public, haya un acceso directo hacia la carpeta storage, de no existir ejecuta el comando php artisan storage:link, y de existir pero no ser un acceso directo, eliminalo y luego ejecuta el comando php artisan storage:link

      Por ultimo, asegurate de haber creado un virtual host, y dicha url colocala en la variable APP_URL dentro de tu archivo .env

    • Emerson Domínguez hace 1 mes

      Gracias Victor, fijate que mi URL ahora apunta asi: http://academia.test//storage/cursos/public/storage/cursos\19f3ac854eb269cfe10fd019951b8724.png, sin embargo, no las puedo visualizar 

                     <article>

                          <img  src="{{Storage::url($course->image->url)}}" alt="">

                      </article>

      sera por la pleca del final es decir esta parte “\19f3ac854eb269cfe10fd019951b8724.png”, en todo caso como se puede modificar para que coloque la pleca correcta? de antemano gracias

    • Emerson Domínguez hace 1 mes

      Aunque nose si esa url sea la correcta, todo esta configurado como los videos

      http://academia.test//storage/cursos/public/storage/cursos\

      veo que se repite la url.

      Saludos

  • Ivan Gomez

    Ivan Gomez hace 9 meses

    Hola buen día 

    Cuando voy a realizar el llenado de las tablas con la información seed me genera este error:

  • Daniel Jorge

    Daniel Jorge hace 9 meses

    Buenas tardes, me sale el siguiente error y no encuentro la solución:

    SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`academytec`.`lecciones`, CONSTRAINT `lecciones_plataforma_id_foreign` FOREIGN KEY (`plataforma_id`) REFERENCES `plataformas` (`id`) ON DELETE SET NULL) (Connection: mysql, SQL: insert into `lecciones` (`nombre`, `url`, `iframe`, `plataforma_id`, `seccion_id`, `updated_at`, `created_at`) values (Qui est maiores reprehenderit non maxime at in., https://youtu.be/PIFBWjLC8Dk, <iframe width="560" height="315" src="https://www.youtube.com/embed/PIFBWjLC8Dk"
                   title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write;      
                   encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>, 1, 1, 2023-06-12 12:23:39, 2023-06-12 12:23:39))

     at vendor\laravel\framework\src\Illuminate\Database\Connection.php:795
       791▕         // If an exception occurs when attempting to run a query, we'll format the error
       792▕         // message to include the bindings with SQL, which will make this exception a
       793▕         // lot more helpful to the developer instead of just the database's errors.
     ➜ 795▕             throw new QueryException(
       796▕                 $this->getName(), $query, $this->prepareBindings($bindings), $e
       797▕             );
       798▕         }
       799▕     }

     1   vendor\laravel\framework\src\Illuminate\Database\Connection.php:580
         PDOException::("SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`academytec`.`lecciones`, CONSTRAINT `lecciones_plataforma_id_foreign` FOREIGN KEY (`plataforma_id`) REFERENCES `plataformas` (`id`) ON DELETE SET NULL)")

     2   vendor\laravel\framework\src\Illuminate\Database\Connection.php:580
         PDOStatement::execute()

     

  • Mdj

    Mdj hace 1 año

    Me salio el error siguiente no se si ha alguien le sucedio lo mismo, pero de todo modos dejo la posible solución:

     

    El error sucede por que no se encuentra la carpeta ‘cursos’, al revisar el porque del error me di cuenta que esta carpeta se crea una posición atras, por lo que la solucion para ello fue cambia la ruta en donde se crea la carpeta curso de la siguiente manera:

    Esto en el archivo “DatabaseSeeeder”

    • Victor Arana Flores hace 1 año

      Hola, así es, se tiene que crear la carpeta, ya que faker no tiene las facultades para crearlas.

    • Luz Lopez hace 9 meses

      si profe, me presentó el mismo inconveniente  tuve que crearla luego de mirar si era un tema de permisos pero nop y bueno creándola se solucionó.

      Gracias :)

  • Edgar Rodriguez

    Edgar Rodriguez hace 1 año

    Buenas, si me pudieran ayudar me sale el siguiente error

    • Victor Arana Flores hace 1 año

      Hola Edgar, el error te dice que no le estás pasando información en el campo platform_id

  • Jesús Ivan Mendoza Contreras

    Jesús Ivan Mendoza Contreras hace 1 año

    Hola, estoy teniendo este problema, aparentemente se descargan las imágenes y se guarda la ruta en la BD, pero en la carpeta storage no hay nada, alguna idea?

     

    Saludos

  • Hamilton Cortez

    Hamilton Cortez hace 1 año

    Buenas tardes tengo este error recien empeze con este curso no se cual es problema

    • Victor Arana Flores hace 1 año

      Hola Hamilton, te dice que el campo iframe es muy pequeño. Trata de definbirlo dicho campo como text en vez de string

    • Angel hace 4 meses

      Correcto, hay que cambiar “string” por “text” en la línea 19 de archivo de migración para Lessons “create_lessons_table”

  • Mauro Tello

    Mauro Tello hace 1 año

    En mi caso tengo 2 problemas, primero es que trabajo con debian y tengo un problema de permisos, porque no puede  crear la carpeta “cursos” eso lo solucioné dentro de todo bastante fácil, creandola a mano y borrando las imagenes antes de volver a ejecutar la migración con los seeders, pero ahora tengo otro problema con el último seeder en donde le agrega el iframe, me dice que String data es muy grande.. creo que deberíamos cambiarlo por text

    • Mauro Tello hace 1 año

      Dentro de la migración de la tabla lessons, cambie el iframe de string a text y funciono

    • Victor Arana Flores hace 1 año

      Hola Mauro. Así es, si es muy grande el texto la idea es cambiarlo por uno de mayor tamaño.

    • Hamilton Cortez hace 11 meses

      yo tengo mis problema como hago ese cambio que indicas borro ‘iframe’ o que pongo comillas no entendo

    • Victor Arana Flores hace 11 meses

      Hola Hamilton, cual es el problema que estás presentando?

  • Ruben

    Ruben hace 1 año

    Ayuda: como puedo solucionar este error

    • Victor Arana Flores hace 1 año

      Hola Ruben. Ese error lo explico en el video.

      Faker no puede crear carpetas, por  lo que ese directorio (public\Storage\Cursos) debe existir.

      si no tienes el acceso directo a la carpeta storage dentro del disco public, tienes que ejecutar en consola php artisan storage:link

      Y en el video explico como crear la carpeta cursos

  • Osmar

    Osmar hace 1 año

    Si tienen problemas al generar las imágenes se debe a que actualmente el servidor https://via.placeholder.com no esta disponible, pero puedes utilizar otro servidor el cual es: https://dummyimage.com , actualmente lo utilice y me funciono correctamente.

    • Victor Arana Flores hace 1 año

      Hola Osmar, gracias por el aporte.

    • Oliver Andres Torres hace 1 año

      saludos, puedes indicar como lo hiciste, yo intente hacerlo con intervention pero me da problemas

    • Osmar hace 1 año

      vendor\fakerphp\faker\src\Faker\Provider\Image.php

       

      public const BASE_URL = 'https://dummyimage.com';  // cambie la URL