FLASKをインストールしてテストプレイするまでの環境設定


概要


本家サイト
https://palletsprojects.com/p/flask/

コマンドラインやターミナルで

pip install flask

でインストールできる。
プログラムを書いたら、macでは

export FLASK_APP=ファイル名

さらに

flask run

で、ブラウザで

http://localhost:5000

でルート指定したHTMLを表示できる。
ただしこの状態だとコマンドラインが実行中で、他の操作を受け付けない。
他の操作をしたい時はコマンドラインをもう一つ立ち上げればいい。
またはflaskをオフにすれば他の操作ができるようになる。
falskをオフにするには

Ctrl + C

で強制終了させればいい。

windowsの場合は、export FLASK_APP=ファイル名の代わりに

set FLASK_APP=ファイル名

になる。あとは同じ。

これは何をしているのかというと、
macのexportやwindowsのsetは、環境変数をその場で設定して、その中に値を入れる、
ということをやっている。

(環境変数を設定すると、パソコンに詳しい情報を入れなくても
ファイルをすぐに探してくれる。よくわからなければ、とりあえず最初は
こうすれば動くものだと覚えておくだけで問題ない)

FLASK_APPという環境変数にファイル名を入れていることになる。
そしてこの命令は一時的に環境変数を設定する命令なので
ここで設定した値はそのセッションのみで有効。
つまりコマンドラインやターミナルを閉じない限り有効。閉じると消えてしまう。

まとめると、FLASKアプリの制作の手順(自分のPC内で実験する)としては、

まずブラウザを立ち上げ、http://localhost:5000を出しておく
(最初は「このサイトにアクセスできません」としか出ていない)
windowsならコマンドラインで目的の.pyファイルのある所まで行き

set FLASK_APP=ファイル名

macなら

export FLASK_APP=ファイル名

で環境変数を一時設定し、次に

falsk run

してブラウザを更新すれば.pyの内容がブラウザに出る。

内容がおかしければコマンドプロンプトやターミナルで

Ctrl + C

でfalskをオフにし、.pyファイルを直し、
再び

flask run

してブラウザの内容を見る。これの繰り返し。

ファイルを直しても一旦flaskをオフにしてまたオンにしないと
直したのが反映されないので注意。少々面倒だが。

なおエラーがあるとflask runした時にエラーが出る

FLASK専用の環境変数は一度に一つしか登録できない。
つまりこのやり方では、2つのファイルを一度に登録してブラウザに出すことができない。
別のファイルでやる時は、export FLASK_APP=ファイル名からやり直す。

FLASK_APP=〇〇に入れるファイル名は当然絶対パスで示さなければならない。
しかしいちいちここに絶対パスを入れるのは面倒なので
cdなどでカレントディレクトリまで行ってからファイル名を入れると面倒がない。

FLASK_APP=〇〇中に何が入っているかは、windowsならコマンドラインの

set

macなら

export

で確認できる。setやexportは現在の環境変数を一覧で出す。
この中にFLASK_APP=というのがあるので、その中のファイル名が
今有効になっているファイル。

結果(コードは後述)


pythonファイル


HTMLファイル

CSSファイル

説明


間違えやすい問題