我尝试使用具有动态连接的mongoengine
连接mongodb
数据库。我从URL请求获取数据库名称。问题是仅连接的第一个URL数据库。
这是mycode
run.py
from application import app
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8089)
utaes.py
from flask import request
from application import app
from mongoengine import connect
class DBConnection():
def __init__(self):
database = request.url.split("/")[2].split(".")[0]
print(database)
connect(database,alias='default')
@app.route('/',methods=['GET'])
def index():
try:
DBConnection();
return redirect(url_for('dashboard'))
except Exception as e:
raise e
在上面的代码中,当我点击URL myDomain.maindomain.com 它将连接 myDomain 并点击URL yourdomain.mainain.mainnomain.com 它将与 YourDomain
连接问题是它仅与一个数据库连接。例如,第一次我点击 myDomain.maindomain.com 然后,数据库每次都与 myDomain 连接,即使我点击了 yourdomain.mainain.maindomain.com 是它的Show myDomain 数据库记录。
我认为您不需要使用不同的数据库。只需在您拥有的每个用例中使用不同的集合,然后将应用程序用烧瓶蒙哥纳包装。
ps。更好地了解变量范围在烧瓶中的工作方式。