MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie verwende ich PyMongo mit Flask Blueprints?

Eines der Probleme bei dem Ansatz, einen Import im Blueprint durchzuführen, wie von Emanuel Ey vorgeschlagen, stellt sich heraus, dass er einen zirkulären Import verursacht. Nach langem Spielen stellt sich heraus, dass der einzige Weg (den ich finden konnte) darin bestand, eine separate Datei namens database.py zu erstellen die eine Verbindung zur Datenbank herstellt, und dann kann ich diese Verbindung wie folgt per Blaupause importieren:

child.py

from database import mongo
courses = Blueprint('courses', __name__)

und meine database.py

from flask.ext.pymongo import PyMongo
mongo = PyMongo() 

und die App login.py muss aber die Datenbank initialisieren

from database import mongo
app = Flask(__name__)
app.config.from_object('config')
mongo.init_app(app) # initialize here!

from child import child 
from child import2 child2

app.register_blueprint(child.child)
app.register_blueprint(child2.child2)