【发布时间】:2019-12-20 15:06:18
【问题描述】:
我在我的 Flask 应用程序中使用 MongoEngine 作为 ODM。根据传递的配置文档,MongoEngine 应该使用不同的集合。
目前我通过更改内部元变量model._meta['collection'] 来实现这一点。有没有其他选择收藏的方法?
from mongoengine import connect
from api_service.model import MyModel
create_app(config):
app = Flask(__name__)
# load app.config
connect(app.config['MONGODB_DB'],
host=app.config['MONGODB_HOST'],
port=app.config['MONGODB_PORT'],
username=app.config['MONGODB_USERNAME'],
password=app.config['MONGODB_PASSWORD'],
)
MyModel._meta['collection'] = app.config['MONGODB_MYMODEL_COLLECTION']
我知道您可以在模型的类主体中通过meta:{} 定义集合(参见here)。但我不在应用程序上下文中,因此无法访问“app.config”。
【问题讨论】:
标签: python flask flask-mongoengine