Python 在更大的应用程序中使用flask_pymongo共享MongoClient的正确方式是什么?
我正在使用flask_restful构建一个REST API,目前正在考虑将其连接到MongoDB数据库。我一直在研究flask_pymongo,如果我理解正确,您可以创建一个表示连接的对象,并使用该对象进行查询Python 在更大的应用程序中使用flask_pymongo共享MongoClient的正确方式是什么?,python,mongodb,design-patterns,flask,pymongo,Python,Mongodb,Design Patterns,Flask,Pymongo,我正在使用flask_restful构建一个REST API,目前正在考虑将其连接到MongoDB数据库。我一直在研究flask_pymongo,如果我理解正确,您可以创建一个表示连接的对象,并使用该对象进行查询 在我看到的示例中,使用了一个文件,对象是全局的。在一个更大的项目中,我需要以某种方式共享这个对象。我必须将此对象设置为全局对象还是有更好的方法来处理它?对于单个文件模块,您可以在文件开头的某个地方实例化连接对象 con = MongoClient(....) 然后可以在端点定义中使用
在我看到的示例中,使用了一个文件,对象是全局的。在一个更大的项目中,我需要以某种方式共享这个对象。我必须将此对象设置为全局对象还是有更好的方法来处理它?对于单个文件模块,您可以在文件开头的某个地方实例化连接对象
con = MongoClient(....)
然后可以在端点定义中使用它
无需将其定义为全局,因为您不会以任何方式修改其属性
def endpoint1(....)
.....
result = con['dbname']['collectionname'].find({...})
def endpoint2(....)
.....
result = con['dbname']['collectionname'].find({...})
如果您在其他模块中需要它,只需导入它
from yourmodule import con