はじめに
Flaskは、Pythonで書かれた軽量なWebアプリケーションフレームワークです。
シンプルな構造と柔軟性を持ち、学習用途から本番環境まで幅広く利用されています。
この備忘録では、Flaskの基本的な使い方を中心に、開発時によく使う設定や機能についてまとめています。
書こうと思ったきっかけ
小規模なWeb APIやフォーム送信機能を素早く試したいと考えたときに、Flaskが最適であると感じました。特にバックエンドの構造を学び直す際に、Flaskのシンプルさが理解の助けになったため、忘れないように個人メモとして記録しています。
Flaskの特徴
- 軽量で学習コストが低い
- ルーティングやテンプレート機能が標準で備わっている
- 拡張が豊富(例:Flask-Login, Flask-WTF, Flask-CORS)
- 最小構成での起動が可能
参考文献
最小構成のサンプルコード
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, Flask!'
if __name__ == '__main__':
app.run(debug=True)
よく使うルーティングパターン
@app.route('/hello/<name>')
def hello_name(name):
return f'Hello, {name}!'
テンプレートを使う(Jinja2)
from flask import render_template
@app.route('/welcome')
def welcome():
return render_template('welcome.html', user="User")
templates/welcome.html
<h1>ようこそ、{{ user }}さん!</h1>
フォーム送信を受け取る
from flask import request
@app.route('/submit', methods=['POST'])
def submit():
data = request.form['data']
return f'送信された内容: {data}'
実行方法
export FLASK_APP=app.py
export FLASK_ENV=development
flask run
まとめ
Flaskは、Web開発の入り口としても、プロトタイピングのツールとしても非常に優れたフレームワークです。
Pythonの文法に馴染みがある方であれば、直感的に使いこなすことができるはずです。
将来的には、Flask拡張機能の使い方や大規模構成のベストプラクティスも学んでいきたいと考えています!