コード変更時にPython Flaskアプリを自動的にリロードする 質問する

コード変更時にPython Flaskアプリを自動的にリロードする 質問する

私はPythonでまともなWebアプリを開発する方法を研究しています。高階構造が邪魔にならないように、軽量なものを選択しました。Flaskフレームワークこれが正しい選択だったかどうかは時が経てばわかるだろう。

ということで、mod_wsgi で Apache サーバーをセットアップし、テスト サイトは正常に動作しています。ただし、py ファイルまたはテンプレート ファイルに変更を加えたときにサイトが自動的に再読み込みされるようにして、開発ルーチンを高速化したいと考えています。サイトの .wsgi ファイルに変更を加えると (Apache 構成ファイルで WSGIScriptReloading On がオンになっていなくても) 再読み込みが発生することはわかっていますが、それでも手動で実行する必要があります (つまり、追加の改行を挿入して保存します)。アプリの py ファイルの一部を編集したときに再読み込みを発生させる方法はありますか? または、.wsgi ファイルを自動的に更新する IDE を使用する必要がありますか?

ベストアンサー1

flask runCLIコマンドを実行するデバッグモード有効にすると、リローダーが自動的に有効になります。Flask 2.2 以降では、コマンドラインでオプション--appを渡すことができます。--debug

$ flask --app main.py --debug run

--appの代わりにmodule:appまたはに設定することもできます。module:create_appmodule.py詳しい説明についてはドキュメントを参照してください。

以下のオプションがさらに利用可能です:

$ flask run --help

Flask 2.2 より前では、FLASK_APPおよびFLASK_ENV=development環境変数を設定する必要がありました。

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

Flask 2.2 でも設定するFLASK_APPことは可能です。FLASK_DEBUG=1

おすすめ記事