1. ホーム
  2. パイソン

[解決済み】コード変更時のPython Flaskアプリの自動再読み込み

2022-03-29 20:43:26

質問

PythonでまともなWebアプリを開発する方法を調査しています。高次の構造体に邪魔されたくないので、私の選択は、軽量な Flask フレームワーク . これが正しい選択だったかどうかは、時間が解決してくれるでしょう。

さて、mod_wsgiでApacheサーバーをセットアップし、テストサイトは問題なく動作しています。しかし、私は、私が作るpyまたはテンプレートファイルの任意の変更時にサイトを自動的に再ロードすることによって、開発ルーチンをスピードアップしたいと思います。私は、サイトの.wsgiファイル内の任意の変更が再読み込みを引き起こすことを見ます(apache設定ファイルのWSGIScriptReloadingオンなしでも)、しかし、私はまだ手動でそれをプロッドしなければなりません(すなわち、余分な改行を挿入して保存します)。私はアプリのpyファイルのいくつかを編集するときに再読み込みを引き起こす方法いくつかの方法がありますか?または、私は私のために.wsgiファイルをリフレッシュするIDEを使用することを期待されていますか?

解決方法は?

現在推奨されている方法は flask コマンドラインユーティリティを使用します。

https://flask.palletsprojects.com/en/1.1.x/quickstart/#debug-mode

$ export FLASK_APP=main.py
$ export FLASK_ENV=development
$ flask run

または1つのコマンドで

$ FLASK_APP=main.py FLASK_ENV=development flask run

デフォルトとは別のポートが必要な場合 ( 5000 を追加します。 --port オプションを指定します。

$ FLASK_APP=main.py FLASK_ENV=development flask run --port 8080

でより多くのオプションが利用できます。

$ flask run --help

FLASK_APP を設定することもできます。 module:app または module:create_app ではなく module.py . 参照 https://flask.palletsprojects.com/en/1.1.x/cli/#application-discovery をご覧ください。