File size: 566 Bytes
b8fc47f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
from typing import Optional
from motor.motor_asyncio import AsyncIOMotorClient
from .config import MONGO_DB, MONGO_URI
mongo_client: Optional[AsyncIOMotorClient] = None
db = None
async def connect_to_mongo():
"""Create a single shared Mongo client + DB handle."""
global mongo_client, db
if mongo_client:
return db
mongo_client = AsyncIOMotorClient(MONGO_URI)
db = mongo_client[MONGO_DB]
return db
async def close_mongo():
global mongo_client
if mongo_client:
mongo_client.close()
mongo_client = None
|