Seeders
Los seeders permiten insertar datos en la base de datos de forma programatica. Son utiles tanto para poblar datos iniciales (como roles o categorias) como para generar datos de prueba durante el desarrollo.
Crear un seeder
php artisan make:seeder PostSeeder
class PostSeeder extends Seeder
{
public function run(): void
{
// Usando factories
Post::factory(50)->create();
// O insertando datos especificos
Post::create([
'title' => 'Post de bienvenida',
'body' => 'Este es el primer post del blog.',
'published' => true,
]);
}
}
Ejecutar seeders
// Ejecutar todos los seeders
php artisan db:seed
// Ejecutar un seeder especifico
php artisan db:seed --class=PostSeeder
// Recrear BD y ejecutar seeders
php artisan migrate:fresh --seed
Es habitual organizar los seeders llamandolos desde DatabaseSeeder, que actua como punto de entrada principal. Los seeders combinados con factories permiten generar grandes cantidades de datos realistas para pruebas.