在我的Flask應用程序中,我通過開發環境中的應用程序提供靜態資產,但我想在生產中使用CDN。所有資產裝入一個名爲base.hmtl
模板,所以我想最簡單的解決方案是一個變量傳遞給渲染功能和類似的模板中使用它:從生產中的CDN而不是燒瓶中提供靜態文件
<script src="{{ STATIC_URL }}/js/main.js"></script>
通常情況下這將是一個空字符串中的開發env和生產中的cdn url。我想避免將這個STATIC_URL
變量傳遞給每個視圖。我可以使它的工作
@bp.context_processor
def set_static_path():
return dict(STATIC_URL='https://foo.bar.com')
但對我來說這似乎有點hacky。有沒有更好的方法來解決這個問題?