Comunidad de diseño web y desarrollo en internet online

Crear datos con Faker, una librería PHP en Laravel

Faker es una librería de PHP que usa Laravel y genera datos como nombre, correo, palabras, imágenes para crear nuestros usuarios anónimos, los cuales usamos para testear nuestra aplicación.

Aunque el método de crear usuarios sea una idea bastante anti-pro, de igual manera lo muestro en este tutorial para poder explicar cómo crear estos usuarios y subir imágenes al servidor como si fueran sus avatares.

En ocasiones cuando estamos creando y probando la funcionalidad de una aplicación web que contiene usuarios, lo más probable es que quieras crear usuarios para poder ver cómo se acomodan los perfiles en un contenedor o en un perfil separado, lo lógico que hacemos es que nos ponemos a crear usuario por usuario en el formulario de registro que hemos creado y eso te hace depender de tu aplicación además ese no es el chiste.



Con aplicaciones web que usan Laravel este proceso se acabó, ahora pones un código dentro un bucle (for) y crea usuarios por montones.

Faker usa un método para obtener imágenes, fotos y poderlas usar.

En la dirección de tu proyecto con Laravel app/database/seeds tenemos los códigos que al ejecutar el comando php artisan db:seed crea, actualiza y elimina registros en la base de datos configurada.

Dentro de la función run ponemos el siguiente código para crear usuarios:

Código :

public function run()
   {
      //inicializamos Faker en modo Español
      $faker = Faker\Factory::create('es_ES');

      for($a = 0; $a < 2; $a++) {

         //Aquí obtenemos la imagen aleatoria 640x480
         $img = file_get_contents($faker->imageUrl('640', '480'));
         $username =  $faker->userName;
         $fileName = str_random(5).'-'.$username.'.jpg';         

         //creamos el user guardando el nombre de la imágen.
         $user = User::create(array(
            'first_name' => $faker->firstname,
            'last_name' => $faker->lastname,            
            'avatar' => $fileName,
         ));

         //Y la guardamos en el servidor.
         file_put_contents("public/images/avatares/$fileName", $img);
      }
   }


Al final cuando ejecuto en la consola php artisan db:seed me crea los 2 usuarios y me guarda la imagen aleatoria.

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

El autor de este artículo ha cerrado los comentarios. Si tienes preguntas o comentarios, puedes hacerlos en el foro

Entra al foro y participa en la discusión

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate