22 lines
951 B
Python
22 lines
951 B
Python
from sqlmodel import SQLModel
|
||
from helpers_bff import AUTH_DB_ENGINE
|
||
from sqlalchemy.schema import CreateTable
|
||
import os
|
||
|
||
# --- Отладочный вывод ---
|
||
print("Таблицы в metadata:", SQLModel.metadata.sorted_tables)
|
||
print("Все зарегистрированные модели:", SQLModel.__subclasses__())
|
||
|
||
# --- Генерация и сохранение SQL-скрипта создания таблиц ---
|
||
def get_sql_create_script():
|
||
script = []
|
||
for table in SQLModel.metadata.sorted_tables:
|
||
create_table_sql = str(CreateTable(table).compile(dialect=AUTH_DB_ENGINE.dialect))
|
||
script.append(f"{create_table_sql};")
|
||
return "\n\n".join(script)
|
||
|
||
sql_script = get_sql_create_script()
|
||
sql_file_path = os.path.join(os.path.dirname(__file__), "sql_create.sql")
|
||
with open(sql_file_path, "w", encoding="utf-8") as f:
|
||
f.write(sql_script)
|
||
print("SQL-скрипт успешно сгенерирован!") |