構成をテキスト ファイルに保存する単純な Bottle アプリがあります。当然のことながら、アプリのほぼすべてのハンドラーで構成を使用できるようにする必要があり、すべての要求で構成を再読み込みする必要があります。
Flask では、 SQLite を接続する方法として Flask のドキュメントで説明されているように、構成ファイルをConfigParser
インスタンスにロードしbefore_request
、それへの参照をオブジェクトの属性に入れることができました。オブジェクトは、すべてのハンドラーで使用できます。g
g
@app.before_request
def before_request():
g.config = load_config()
@app.route('/')
def index():
param = g.config.get(...)
...
一方、Bottle では、スレッド ローカルは悪いことと見なされます。DB 接続を格納する推奨される方法は、巧妙なトリックを使用して署名のハンドラーを分析するプラグインを作成することです。また、問題は SQLite では既に解決されていますが、他の任意の要求ごとのデータの場合はそうではありません。
率直に言って、このような単純なタスクを実行するのに 60 行のコードを書かなければならないなんて信じられないので、何か抜けているに違いないと思います。
何か案は?