python 2.xでアプリを実行しているように見えますが、アプリが使用するモジュールはpython3.xのものです。特に、pymongo モジュールurllib.parseをインポートしようとしています 、urlparseと呼ばれていました Python2.xで。その結果、import urllib.parseを実行します Python 2.xを使用すると、ImportErrorが発生します。
仮想環境をどのようにアクティブ化しましたか?
コメントへの回答:
それはいいです。仮想環境内のpymongoコードは、(指定されたポートを使用して)mongodbサーバーに接続するものです。
Flaskドキュメント<の指示に従いましたか/ a> mod_wsgiに関して 、virtualenv 、およびactivate_thisを設定します 変数?
コメント#2への回答:
はい、Python 2.xで実行している間はサイトは正常に機能しますが、dbの使用を開始すると、python3.x内にライブラリをインポートしようとするモジュールを使用しています。その結果、Python 2.xを引き続き使用してサイトを実行する場合、データベースを使用することはありません。
これを試してください:
1)仮想環境を含むディレクトリに移動します:
$ cd /some/path/to/venv
2)すべてのファイルを一覧表示します:
$ ls
3)binディレクトリに移動します:
$ cd bin
4)すべてのファイルを一覧表示します:
$ ls
5)ファイルactivate_this.pyを開きます 上部のコメントを読んでください。例:
$ vi activate_this.py
6)以前の回答で投稿したFlashドキュメントへのリンクをクリックして、そこで資料をもう一度読んでください。