私のFlaskアプリケーションでは、dev envのアプリを通じて静的資産を提供していますが、実動環境でCDNを使用したいと思います。すべての資産はbase.hmtl
と呼ばれるテンプレートにロードされたので、私は最も簡単な解決策は、レンダリング関数に変数を渡すなど、テンプレートでそれを使用することです推測されます。生産現場でFlaskではなくCDNから静的ファイルを提供
<script src="{{ STATIC_URL }}/js/main.js"></script>
通常、それは、devに空の文字列になりますenv、cdn urlを生成します。私はすべてのビューにこのSTATIC_URL
変数を渡すことを避けたいと思います。私はそれを動作させることができる
@bp.context_processor
def set_static_path():
return dict(STATIC_URL='https://foo.bar.com')
しかし、これは少しハッキリのようです。この問題を解決する良い方法はありますか?