Files
popa-site-backend/app/db/mongo.py
aurinex 32c34e78f7 init
2025-12-15 14:08:07 +05:00

26 lines
619 B
Python

from motor.motor_asyncio import AsyncIOMotorClient, AsyncIOMotorDatabase
from app.core.config import settings
_client: AsyncIOMotorClient | None = None
_db: AsyncIOMotorDatabase | None = None
async def connect_mongo() -> None:
global _client, _db
_client = AsyncIOMotorClient(settings.mongo_uri)
_db = _client[settings.mongo_db]
async def close_mongo() -> None:
global _client, _db
if _client is not None:
_client.close()
_client = None
_db = None
def get_db() -> AsyncIOMotorDatabase:
if _db is None:
raise RuntimeError("MongoDB is not connected")
return _db