Files
service-finder/backend/debug_metadata.py
2026-03-13 10:22:41 +00:00

43 lines
1.5 KiB
Python

import sys
import os
# Biztosítjuk, hogy az aktuális könyvtár benne legyen az útvonalban
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), ".")))
try:
print("🔍 Modellek betöltése...")
from app.database import Base
# Fontos: explicit importáljuk a models csomagot, hogy lefussanak az __init__.py importok
import app.models
print("✅ Importálás sikeres.\n")
except ImportError as e:
print(f"❌ KRITIKUS IMPORT HIBA: {e}")
sys.exit(1)
except Exception as e:
print(f"❌ VÁRATLAN HIBA: {e}")
sys.exit(1)
# Metadata kinyerése
metadata_tables = Base.metadata.tables
print(f"📊 Összesen talált táblák száma a memóriában: {len(metadata_tables)}")
if len(metadata_tables) == 0:
print("⚠️ VESZÉLY: A Metadata ÜRES! Az Alembic ezért nem lát semmit.")
print("Ellenőrizd, hogy a modellek valóban az 'app.database.Base'-ből örökölnek-e!")
else:
# Csoportosítás sémák szerint a jobb átláthatóságért
schemas = {}
for table_full_name in metadata_tables:
table_obj = metadata_tables[table_full_name]
schema = table_obj.schema or "public"
if schema not in schemas:
schemas[schema] = []
schemas[schema].append(table_full_name)
for schema in sorted(schemas.keys()):
print(f"\n--- 📂 Séma: {schema} ({len(schemas[schema])} tábla) ---")
for table in sorted(schemas[schema]):
print(f" [✓] {table}")
print("\n🚀 Diagnosztika vége.")