from flask_pymongo import PyMongo from flask import Flask from configs import Config from di_container import Container # Import your container def init_db(app: Flask, container: Container) -> PyMongo: try: app.config["MONGO_URI"] = Config.MONGO_URI mongo = PyMongo(app) # Initialize PyMongo with the app print(f"Connecting to MongoDB: {Config.MONGO_URI}") mongo.cx.server_info() # Ping the MongoDB server print("✅ MongoDB connection successful!") # Store the MongoDB instance in the container container.mongo.override(mongo) return mongo except Exception as e: print(f"❌ MongoDB connection failed: {e}") return None # Handle failure gracefully