[英]How to use multiple Mongodb in flask
我有兩個 mysql 數據庫,一個是本地主機,另一個現在在服務器中,我將使用 Flask 在 python 中為該應用程序創建簡單的應用程序,我想連接兩個 mysql 數據庫(本地和服務器)。
任何人請建議如何將多個數據庫連接到燒瓶中。
app = Flask(__name__)
client = MongoClient()
client = MongoClient('localhost', 27017)
db = client.sampleDB1
如果可能,示例代碼。
謝謝
我也遇到了同樣的問題,終於弄明白了。
而不是使用
client = MongoClient()
client = MongoClient('localhost', 27017)
db = client.sampleDB1
刪除所有這些並嘗試以下操作:
mongo1 = PyMongo(app, uri = 'mongodb://localhost:27017/Database1')
mongo2 = PyMongo(app, uri = 'mongodb://localhost:27017/Database2')
然后,當你想調用一個特定的數據庫時,你可以使用:
@app.route('/routenamedb1', methods=['GET'])
def get_data_from_Database1():
Database1 = mongo1.db.CollectionName ##Notice I use mongo1,
#If I wanted to access database2 I would use mongo2
#Walk through the Database for DC to
for s in Database1.find():
#Modifying code
return data
#This technique can be used to connect to multiple databases or database servers:
app = Flask(__name__)
# connect to MongoDB with the defaults
mongo1 = PyMongo(app)
# connect to another MongoDB database on the same host
app.config['MONGO2_DBNAME'] = 'dbname_two'
mongo2 = PyMongo(app, config_prefix='MONGO2')
# connect to another MongoDB server altogether
app.config['MONGO3_HOST'] = 'another.host.example.com'
app.config['MONGO3_PORT'] = 27017
app.config['MONGO3_DBNAME'] = 'dbname_three'
mongo3 = PyMongo(app, config_prefix='MONGO3')
創建 model.py 並在其中創建 2 個數據庫的單獨實例,然后在 app.py 中:
app = Flask(__name__)
app.config['MODEL'] = model.my1st_database()
app.config['MODEL2'] = model.my2nd_database()
對我有用:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.