私はPythonでまともなWebアプリを開発する方法を研究しています。高階構造が邪魔にならないように、軽量なものを選択しました。Flaskフレームワークこれが正しい選択だったかどうかは時が経てばわかるだろう。
ということで、mod_wsgi で Apache サーバーをセットアップし、テスト サイトは正常に動作しています。ただし、py ファイルまたはテンプレート ファイルに変更を加えたときにサイトが自動的に再読み込みされるようにして、開発ルーチンを高速化したいと考えています。サイトの .wsgi ファイルに変更を加えると (Apache 構成ファイルで WSGIScriptReloading On がオンになっていなくても) 再読み込みが発生することはわかっていますが、それでも手動で実行する必要があります (つまり、追加の改行を挿入して保存します)。アプリの py ファイルの一部を編集したときに再読み込みを発生させる方法はありますか? または、.wsgi ファイルを自動的に更新する IDE を使用する必要がありますか?
ベストアンサー1
flask run
CLIコマンドを実行するデバッグモード有効にすると、リローダーが自動的に有効になります。Flask 2.2 以降では、コマンドラインでオプション--app
を渡すことができます。--debug
$ flask --app main.py --debug run
--app
の代わりにmodule:app
またはに設定することもできます。module:create_app
module.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