flask shellで参照する環境変数を.flaskenvから読み込む

flask shellコマンド実行前に、毎回『export FLASK_APP=hogehoge.py』を打ち込むのは面倒くさい。

そういうときは、.flaskenvに環境変数を書いてやればいいそうです。

■.flaskenv

export FLASK_APP=hogehoge.py

そして、flask shellを実行します。

$ flask shell
 * Tip: There are .env or .flaskenv files present. Do "pip install python-dotenv" to use them.
Python 3.8.0 (default, Oct 27 2019, 18:18:15) 
〜省略〜

あら?
なにやら、python-dotenvをインストールするようにと言われております。
python-dotenvって、なんじゃらほい。
ググってみたところ、こちらのサイトが見つかりました。
»python-dotenvを使って環境変数を設定する

どうやら、Pythonプログラミング環境で使用する環境変数を公開するプログラムから分離するためのツールみたいです。

おまけに、私の書き方は間違ってました。

まずは、python-dotenvをインストールします。

$ pip install python-dotenv

その後、環境変数FLASK_APPを未定義にします。

$ unset FLASK_ENV

.flaskenvに以下の一行を追加します。

FLASK_APP=hogehoge.py

flask shellの実行。

$ flask shell

うまい具合に、Flaskアプリケーションの設定が反映されました。
これで、少しだけ手間が省けるようになりました。