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

not able to run the first run.py of 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 快速入门中的内容进行操作?

您收到的错误是因为您使用的是 运行ning 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+ 不兼容.此外,如果您想 运行 MongoDB 3.0 与 Eve 一起使用,您可以这样做。 PyMongo 2.8 与 MongoDB 3.0.

完全兼容