2

私は次のことを期待していましたが、この時点で立ち往生しています。

* Serving Flask app "app"
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

ターミナルで、実行してみましFLASK_APP=run.py flask run

ModuleNotFoundError: 「my_app」という名前のモジュールがありません</p>

コマンドの名前を に変更しようとするとFLASK_APP=__init__.py flask run

エラー: モジュール「myProject」でアプリケーションが見つかりませんでした。Flask アプリケーションが含まれていますか? WSGI ミドルウェアでラップしたか、ファクトリ関数を使用している可能性があります。

これが私のプロジェクト構造です:

myProject/
    |—my_app/
        |— source/
            |— __init__.py
            |— other .py files
        |— static/
        |— templates/
    |— __init__.py
    |— someFile.sqlite
    |— run.py

myProject/run.py次の 2 行のコードが含まれます。

from my_app import app 
app.run()

myProject/__init__.py何も含まれていません。空白です。

myProject/source/__init__.pyも空白です(しかし、これらのファイルはここにあるだけでよいのでしょうか?)

PyCharm でファイルを実行する際に問題がありますが、Spyder Anaconda でファイル run.py を実行すると、サーバーが実行中であることを示す予想どおりのメッセージが表示されます。Spyder では動作するのに、PyCharm では動作しないのはなぜですか?

4

2 に答える 2

0

トピックに入る前に__init__.py、フォルダーの下にを作成する必要がありmy_appます。これにより、Python パッケージに変換されるため、インポートできます。

を実行すると、flask はで指定したモジュール内のインスタンスflask runを探すので、この状況では必要ありません。appFLASK_APPapp.run()

何をする必要がありますか?

  1. を削除しrun.pyます。
  2. FLASK_APPフラスコ インスタンスを作成するモジュール名/インポート パスapp(おそらく) に設定しmy_app.sourceます。
  3. 次に、実行しますflask run
于 2018-10-27T06:18:48.557 に答える