Python Flaskは、Python用のマイクロフレームワークで、非常に軽量でカスタマイズ性が高いです。この記事では、Flaskを使用してローカルWebサーバーを構築し、フロントエンド開発環境のビルド資材と連携する方法を説明します。
Flaskのセットアップ
まずはFlaskパッケージをインストールします。カレントディレクトリは proj
で、以下のコマンドを実行します。
$ pip install Flask
次に、Flask実行タスクを記述します。用意するタスクは、webサーバ立ち上げとフロントエンドビルド資材 (public/index.html
)をルート表示することです。
# main.py
# -*- coding: utf-8 -*-
import os
from app.index import app
if __name__ == '__main__':
app.run(host=os.getenv('APP_ADDRESS', 'localhost'), port=8000)
main.py
ではwebサーバの立ち上げのみを行います。その他の機能・設定は app/index.py
に取りまとめてみます。
# app/index.py
# -*- coding: utf-8 -*-
import os
from flask import Flask
from app import static
app = Flask(__name__)
app.register_blueprint(static.app)
@app.route('/')
def index():
return static.app.send_static_file('index.html')
app/index.py
では、HelloWorld程度最小限の設定を記述します。@app.route ('/')
デコレータをつけて、ルート表示した際に何を返すかを実装しています。
# app/static.py
# -*- coding: utf-8 -*-
from flask import Blueprint
app = Blueprint('public', __name__, static_url_path='', static_folder='../public')
app/static.py
ではpublic/
配下をルート表示するための設定を記述します。static.py
から見て相対パスでpublic/
階層を記述してみます。
最後に、webサーバを起動します。
$ python main.py
以上で、Flaskを使用してローカルWebサーバーを構築し、フロントエンド開発環境のビルド資材と連携する方法を説明しました。この知識を活用して、Python Flaskとフロントエンドの連携をより効果的に行うことができます。.