HOWTO · Flask
フラスコ g オブジェクト
このガイドでは、Flask の g について学習します。
このページの内容
このガイドでは、Flask の g について学習します。 g オブジェクトとは?
このオブジェクトは何に使用され、g オブジェクトはいつ使用されますか? だから、遅滞なく、学びましょう。
g オブジェクトの Flask
Flask は g という名前のオブジェクトを提供します。 このオブジェクトは、クライアントまたは CLI (コマンド ライン インターフェイス) コマンドからの要求時にアプリケーションを実行している間、共通データを格納します。
g の意味は global であり、グローバルに使用される単純な名前空間です。つまり、その有効期間は、使用されているアプリケーションと同じです。
オブジェクト g は、アプリケーションのコンテキスト内で呼び出されるたびに使用できるデータを保持するために使用されます。これは、全体を通して一定であるためです。
通常、このオブジェクトのインポートには flask.global が使用されますが、flask モジュールを使用するだけで、オブジェクト g もショートカットとしてインポートできます。
以下は、索引ページと最初のページで呼び出される g オブジェクトの例です。
# import
from flask import Flask, g
# initialize app
app = Flask(__name__)
@app.before_request
def gobal_message():
g.message = "Hello I am g"
@app.route("/")
def index():
return f"{g.message} from index"
@app.route("/first")
def first():
return f"{g.message} from first"
if __name__ == "__main__":
app.run(debug=True)
インデックス "/" ページの出力:
Hello I am g from index
最初の "/first" ページに出力:
Hello I am g from first
上記の例に見られるように、g.message は 1 回だけ初期化され、アプリケーションの範囲内で何度でも使用できます。