ディレクトリ構造
jinja2
|
|--app.py
|--templates
| |--index.html
app.pyの内容
ーーーーー
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
ーーーーー
index.htmlの中身
ーーーーー
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>HTMLファイルを読み込む</title>
</head>
<body>
<h1>render_template関数</h1>
<p>HTMLファイルは、無事読み込まれています。</p>
</body>
</html>
ーーーーー
FLASK用シェル変数の設定(2番目はデバッグモードの有効設定)これで即時アップデート反映される(bash環境)
ーーーーーーーーーーーーーー
export FLASK_APP=app
export FLASK_ENV=development
ーーーーーーーーーーーーーー
jinja2 ディレクトリの直下(app.py)が見える場所で、、次のコマンド実行
>flask run
* Serving Flask app 'app' (lazy loading)
* Environment: development
* Debug mode: on
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 125-882-778
http://127.0.0.1:5000/をクリックするとブラウザが起動され
ーーーーーーーーーーーーーー
render_template関数
HTMLファイルは、無事読み込まれています。
ーーーーーーーーーーーーーー
が表示される
トラブルシューティング
PCのターミナルなど、ツールのパスが通っているターミナルで設定、コマンド実行すること
何回か実行するとプロセスが残っている状態に陥る時があるとflask run起動時に次のエラーメッセージが出る場合がある
"OSError: [Errno 48] Address already in use"
これを解決にするには前回走らせて残っているプロセスを以下の要領でKillする
-
ps -fA | grep python
lsof -i :5000 | grep python
kill processID