36 lines
1.3 KiB
Python
Executable File
36 lines
1.3 KiB
Python
Executable File
import asyncio
|
|
import os
|
|
from sqlalchemy.ext.asyncio import create_async_engine
|
|
from sqlalchemy import text
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
# Adatbázis elérés
|
|
raw_url = os.getenv("DATABASE_URL")
|
|
if not raw_url:
|
|
raw_url = "postgresql://admin:PASSWORD_111@postgres-db:5432/service_finder"
|
|
DATABASE_URL = raw_url.replace("postgresql://", "postgresql+asyncpg://").replace("/service_finder_db", "/service_finder")
|
|
|
|
async def create_user():
|
|
print(f"🔌 Kapcsolódás...")
|
|
engine = create_async_engine(DATABASE_URL)
|
|
|
|
async with engine.begin() as conn:
|
|
print("👤 1-es számú felhasználó beszúrása...")
|
|
# Kényszerítjük az ID=1-et, hogy passzoljon a main.py-hoz
|
|
await conn.execute(text("""
|
|
INSERT INTO data.users (id, email, password_hash, role, is_active)
|
|
VALUES (1, 'demo@user.com', 'dummy_hash', 'PRIVATE', TRUE)
|
|
ON CONFLICT (id) DO NOTHING;
|
|
"""))
|
|
|
|
# Frissítjük a számlálót, hogy a következő user ID 2 legyen (ne akadjon össze)
|
|
await conn.execute(text("SELECT setval('data.users_id_seq', (SELECT MAX(id) FROM data.users));"))
|
|
|
|
print("✅ KÉSZ! A Demo User (ID: 1) létezik.")
|
|
await engine.dispose()
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(create_user())
|