Не удалось запустить первый run.py накануне
Я пытаюсь научиться накануне использовать его для показа базы данных, и я начинаю с первого накануне первого шага.
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.7pip -V
: 6.1.1python --version : 2.7.6
MongoDB shell version: 2.4.9
1 ответ
Ошибка, которую вы получаете, заключается в том, что вы используете PyMongo 3.0.1, который сильно нарушает обратную совместимость. Если вы посмотрите на требования Eve, то обнаружите, что для этого требуется PyMongo 2.8 (на самом деле это 2.7.x в производстве; 2.8+ в ветке разработки).
Если вы приобрели PyMongo 3.0.1, то я подозреваю, что вы установили требования вручную. Идеальный способ установить Eve (или любую другую библиотеку Python на самом деле) - это pip-инсталляция из PYPI, даже лучше, если в virtualenv; см. страницу установки.
Напомним, что совместимая ветка PyMongo 3.0.1 готова на GitHub, но в настоящее время она полагается на форк Flask-PyMongo, поскольку текущий выпуск Flask-PyMongo не совместим с PyMongo 3+. Кроме того, если вы хотите запустить MongoDB 3.0 с Eve, вы можете сделать это. PyMongo 2.8 полностью совместим с MongoDB 3.0.