diff --git a/database/migrate.php b/database/migrate.php index 124267d..eaec4c6 100644 --- a/database/migrate.php +++ b/database/migrate.php @@ -39,16 +39,22 @@ try { $executed = $db->fetchAll("SELECT filename FROM migrations"); $executedFiles = array_column($executed, 'filename'); - // Buscar archivos .sql en el directorio database/ - $migrationFiles = glob(__DIR__ . '/*.sql'); - sort($migrationFiles); // Ordenar alfabéticamente - + // Buscar archivos .sql en database/ Y en migrations/ (carpeta raíz del proyecto) + $dbFiles = glob(__DIR__ . '/*.sql') ?: []; + $migrationsFiles = glob(__DIR__ . '/../migrations/*.sql') ?: []; + + // Unir y ordenar por nombre de archivo (orden cronológico por prefijo) + $allFiles = array_unique(array_merge($dbFiles, $migrationsFiles)); + usort($allFiles, fn($a, $b) => strcmp(basename($a), basename($b))); + $migrationFiles = $allFiles; + if (empty($migrationFiles)) { echo "ℹ️ No se encontraron archivos de migración\n"; exit(0); } - - echo "📋 Encontrados " . count($migrationFiles) . " archivos de migración\n\n"; + + echo "📋 Encontrados " . count($migrationFiles) . " archivos de migración\n"; + echo " (database/: " . count($dbFiles) . ", migrations/: " . count($migrationsFiles) . ")\n\n"; $executed_count = 0; $skipped_count = 0;