Flaskで、python中に定義した変数(グローバルな定数的な使い方をしてるもの)を共通して使いたかったので、メモ。
環境
Flask 0.12
python 3.6.0
実現方法
定数置き場的なクラスを作る。
/common/const.py
# coding=utf-8
class Const(object):
TEST_VAR = 'hoge'
メインのpyでappに設定
main.py
# coding=utf-8
from flask import Flask
from common.const import Const
app = Flask(__name__)
# Constの中身をそのままjinja2でつかえるよ!!
app.jinja_env.globals.update(Const.__dict__)
templateに書く
test.html
{{ TEST_VAR }}
とすると、hoge が表示される。
jsとpython間でエラーコードとか共通定義しておきたいときに。
もっとすまーーーとなやり方あるのかなあ・・・?
参考
ありがとうございます
http://y0m0r.hateblo.jp/entry/20120115/1326630063
http://stackoverflow.com/questions/33324090/access-jinja2-globals-variables-inside-template