2017-09-21 10 views
0

私はflask-mongoengine==0.7.4を使用していますが、私はこのレポから「manage.py runserver」とthis commitを実行しようとしています。Flask web app ValidationError ImportError

私はmongo dbをインストールして実行していますが、 "mongo"を実行して "test"(デフォルト)データベースに接続して変更できます。 私はグーグルでthisに出くわしましたが、私はアップグレードする必要はないと思っています。「fromzeroedu」はアップグレードする必要がなかったからです。

私はこれはそれの依存関係に関連する問題である

Traceback (most recent call last): 
    File "/home/ubuntu/workspace/flaskbook/manage.py", line 5, in <module> 
    from application import create_app 
    File "/home/ubuntu/workspace/flaskbook/application.py", line 2, in <module> 
    from flask.ext.mongoengine import MongoEngine 
    File "/home/ubuntu/workspace/flaskbook/venv/lib/python3.4/site-packages/flask/exthook.py", line 81, in load_module 
    reraise(exc_type, exc_value, tb.tb_next) 
    File "/home/ubuntu/workspace/flaskbook/venv/lib/python3.4/site-packages/flask/_compat.py", line 32, in reraise 
    raise value.with_traceback(tb) 
    File "/home/ubuntu/workspace/flaskbook/venv/lib/python3.4/site-packages/flask_mongoengine/__init__.py", line 16, in <module> 
    from mongoengine.base import ValidationError 
ImportError: cannot import name 'ValidationError' 

答えて

2

このエラーが発生します。 flask_mongoengine-0.7.4のsetup.pyを見た場合(fromzeroeduのrequirements.txtに記述されているバージョン)このパッケージはmongoengine>=0.7.10に依存しています。

ただし、チェックはmongoenigne's v0.11.0 tagです。バージョン0.11.0、Errorsbase)はerrorsに移行されています。

だから、何が起こったのかを理解するだけで十分だと思います。この問題を解決するには、実際にflask_mongoengineをアップグレードするか、古いバージョンmongoengineをv0.11.0より下にインストールする必要があります。あなたがつもりなら、あなたのrequirements.txtでそう

は、持っている:「フラスコ-mongoengineの== 0.7.4」 は、その後、あなたがより良いもこの指定:「mongoengineの==を0.10.0」 MongoDBはめちゃくちゃにしているので彼ら自身の依存関係!

+0

あなたが持っているものパッケージ化したバージョンを参照することができますので、「ピップフリーズ」を実行します。 ピップ凍結 フラスコ== 0.10.1 フラスコ-mongoengineの== 0.7.4 フラスコスクリプト== 2.0.5を フラスコWTF == 0.14.2 itsdangerous == 0.24 Jinja2の== 2.9.6 MarkupSafe == 1.0 mongoengineの== 0.13.0 pymongo == 3.5.1 6 == 1.11.0 WERKZEUG = = 0.12.2 WTForms == 2.1 "" "mongoengine == 0.13.0とフラスコ - mongoengine == 0.7.4" "" "互換性がありません。 "ヴァリダtionError "トレースバック(エラー)。 –

関連する問題