无法运行前夕的第一个run.py

时间:2015-05-11 21:07:24

标签: python mongodb eve

我试图学习前夕使用它来公开数据库,我从头开始eve first step

run.py

from eve import Eve
app = Eve()

if __name__ == '__main__':
    app.run()

settings.py

DOMAIN = {'people': {}}

requirements.txt

scrapy==0.24.4
eve==0.5
pymongo==3.0.1

python run.py

   eve.io.base.ConnectionException: Error initializing the driver. Make sure the database serveris running. Driver exception: ConfigurationError('Unknown option auto_start_request',)

出了什么问题?为什么数据库存在问题,尽管我完全遵循eve快速入门中的内容?

  • virtualenv --version:12.0.7
  • pip -V:6.1.1
  • python --version : 2.7.6
  • MongoDB shell version: 2.4.9

1 个答案:

答案 0 :(得分:3)

您得到的错误是因为您正在运行PyMongo 3.0.1,这会大大破坏向后兼容性。如果你研究Eve requirements,你会发现它需要PyMongo 2.8(实际上它在生产中是2.7.x;在开发分支上是2.8+)。

如果你有PyMongo 3.0.1,那么我怀疑你手动安装了这些要求。安装Eve(或任何其他Python库)的理想方法是从PYPI进行pip安装,如果在virtualenv中更好;请参阅installation页。

为了记录,PyMongo 3.0.1兼容分支已在GitHub上准备就绪,但它目前依赖于Flask-PyMongo分支,因为当前的Flask-PyMongo版本与PyMongo 3+不兼容。此外,如果你想用Eve运行MongoDB 3.0,你可以这样做。 PyMongo 2.8与MongoDB 3.0完全兼容。

相关问题