🌱 Uso de Factories y Seeders
Genera datos de prueba de forma rápida y segura
Las factories y los seeders en Laravel facilitan la creación de datos de prueba. Útiles para poblar la base de datos durante el desarrollo, pruebas o demostraciones. En esta lección aprenderás a crear factories, seeders y a ejecutar los comandos para poblar tablas con datos ficticios.
🔧 ¿Qué es una Factory?
      Una factory define cómo se generan los atributos fake de un modelo (con Faker).
      Se ubican en database/factories/ y facilitan la creación de instancias de modelos para tests o seeders.
    
Ejemplo: database/factories/UserFactory.php
        
      
 $this->faker->name(),
            'email' => $this->faker->unique()->safeEmail(),
            'email_verified_at' => now(),
            'password' => bcrypt('password'), // contraseña por defecto para pruebas
            'remember_token' => Str::random(10),
        ];
    }
}
?>
      
    📦 ¿Qué es un Seeder?
      Un seeder es una clase que inserta datos en la base de datos. Normalmente usa factories para crear
      muchos registros de forma sencilla. Se ubican en database/seeders/.
    
Ejemplo: database/seeders/UsersTableSeeder.php
        
      
count(50)->create();
    }
}
?>
      
    ⚙️ Comandos útiles
php artisan make:factory NombreFactory --model=Model— Crear una factory asociada a un modelo.php artisan make:seeder NombreSeeder— Crear un seeder.php artisan db:seed --class=UsersTableSeeder— Ejecutar un seeder concreto.php artisan migrate --seed— Ejecutar migraciones y seeders automáticamente.php artisan migrate:fresh --seed— Borrar todas las tablas, migrar y seedear (útil en desarrollo).
Comando: crear factory
        
      
php artisan make:factory UserFactory --model=User
      
    🎛️ Ejemplo visual: simular un seeder en la página
Aquí puedes simular la ejecución de un seeder para ver cómo quedarían los datos en una tabla. (Esto es una simulación visual: los datos no afectan tu base real).
✅ Buenas prácticas
- No uses datos reales en seeders públicos (passwords, emails reales).
 - Usa factories para generar datos coherentes y repetibles.
 - Si necesitas datos determinísticos para tests, fija semillas (seed) o usa métodos que acepten un estado conocido.
 - Evita ejecutar 
migrate:fresh --seeden entornos de producción. 
  
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias