Flask-PyMongo和init_app()

时间:2016-02-23 10:26:55

标签: python mongodb flask

我正在清理我的开发环境。我的代码运行正常,但我想删除各种mongo驱动程序之间的任何冲突。但是现在我对以下设置产生的错误感到困惑

<app.py>

from database import mongo

app = Flask(__name__)
app.config.from_object('config')
mongo.init_app(app)

<database.py>

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

给出以下错误:

  mongo.init_app(app)
  File "/home/x/venv/local/lib/python2.7/site-packages/flask_pymongo/__init__.py", line 232, in init_app
    cx = connection_cls(*args, **kwargs)
  File "/home/x/venv/local/lib/python2.7/site-packages/pymongo/mongo_client.py", line 342, in __init__
    for k, v in keyword_opts.items())
  File "/home/x/venv/local/lib/python2.7/site-packages/pymongo/mongo_client.py", line 342, in <genexpr>
    for k, v in keyword_opts.items())
  File "/home/x/venv/local/lib/python2.7/site-packages/pymongo/common.py", line 465, in validate
    value = validator(option, value)
  File "/home/x/venv/local/lib/python2.7/site-packages/pymongo/common.py", line 107, in raise_config_error
    raise ConfigurationError("Unknown option %s" % (key,))
pymongo.errors.ConfigurationError: Unknown option auto_start_request

在我的requirements.txt中我有:Flask-PyMongo==0.3.1

1 个答案:

答案 0 :(得分:2)

您可能正在使用PyMongo<3.0版本。

3.0版中的

auto_start_request客户端方法was removed,并将更改添加到Flask-PyMongo==0.4.1

因此,您应该升级Flask-PyMongo或降级PyMongo包。