普通吸ったら吐くよね

output量を増やしたいブログ

from app import app~己を愛す~

from app import app

home/
  ├ app/
   ├ __init__.py
   ├ ...
  ├ main.py
  ├ ...

こんな感じのディレクトリ構造をもったFlaskについて

pythonでは__init__.py持つディレクトリをパッケージとして扱えます。

__init__.py

from flask import Flask

app = Flask(__name__)

__init__.pyではflaskライブラリのFlaskクラスをインポートさせて__name__で生成、それをappにぶち込みます。

main.py

from app import app

ここでさっき作ったappパッケージのappオブジェクトをインポートしてます。
__init__.pyで記述したあいつです。

もう少しだけ細かく見ていくと

  1. __init__.pyでappディレクトリをパッケージとして扱える!
  2. パッケージを参照するよ!
  3. パッケージの中には__init__.pyに記述したオブジェクトとかが入っているよ!
  4. Flaskオブジェクトを輸入するよ!
  5. これでflaskアプリケーションが使えるよ!

みたいなことで

$ export FLASK_APP=main.py

こんな感じのことをして

$ flask run

をするとflaskが動く。

参考
blog.miguelgrinberg.com

flaskのdebug modeをonにする

pythonの軽量フレームワークFlaskについて

debug modeをonにすると・・・

アプリケーションモジュールとして扱われるファイルを変更した時、自動でリロードされる。
エラーを起こしたときにブラウザ上にエラー内容を出力してくれる。

1.debug=True

app.run(debug=True)

これを記述したpythonファイルを実行するとデバッグモードON!!!!!!!

2.FLASK_DEBUG

export FLASK_DEBUG=True

環境変数でFLASK_DEBUGをTrueにしてflask runと唱えるとデバッグモードON!!!!!!!!

3.FLASk_ENV

export FLASK_ENV=development

とかやってもいけるらしい

手動で再実行しなくていいのは便利!
デバッグモードON!!!!!!!

参考
blog.miguelgrinberg.com