Flaskアプリケーションプログラミング

Flask Mega Tutorialの和訳メモ。

Chaper 1 Hello, World!

1.3 A “Hello, World” Flask Application
・超カンタンなWebアプリの作成

Chaper 2 Templates

2.1 What Are Templates?
・テンプレートファイルでHTMLファイルを出力する
・ルーティングの基礎

from app import app

@app.route('/')
def index():
    # ....

2.2 Conditional Statements
・テンプレートファイルに条件式を書く

2.3 Loops
・配列っぽいテンプレート変数をループ処理する

2.4 Template Inheritance
・テンプレートを階層化し、共通部分をベーステンプレートに抜き出す

Chapter 3 Web Forms

3.1 Introduction to Flask-WTF
・flask-wtfのインストール

$ pip install flask-wtf

3.2 Configuration
・アプリケーションの設定項目をコンフィギュレーションクラスに記述する
・Flaskアプリにおけるコンフィギュレーションの簡単な方法

app = Flask(__name__)
app.config['SECRET_KEY] = 'hogehoge-fugafuga'

・コンフィギュレーションクラスを用いる方法
config.py

import os

class Config:
    SECRET_KEY = os.environ.get('SECRET_KEY') or 'hogehoge'                

app/__init__.py

#...
from config import Config

app = Flask(__name__)
app.config.from_object(Config)
#...

3.3 User Login Form

Chapter 4 Database

4.5 Creating The Migration Repository
マイグレーションディレクトリの作成

$ flask db init

※環境変数FLASK_APPの値による

4.6 The First Database Migration
マイグレーションファイルの作成
※既存DBには変更を加えない。

$ flask db migrate -m "コメント"

マイグレーションファイルの内容をデータベースに反映する

$ flask db upgrade