Flask-Asset не создает правильный URL на шаблоне
Я не могу понять, почему Flask-CDN не создает мои шаблоны с помощью URL-адреса Amazon CloudFront для моих статических файлов. Вот моя установка:
1) Настройте домен cdn и попросите Flask-Assets использовать cdn:
class AppConfig(BaseConfig):
DEBUG = False
FLASK_ASSETS_USE_CDN = True
CDN_DOMAIN = "mydomain.cloudfront.net"
2) Приложение Flask с объектом CDN:
config_object = AppConfig
app = flask.Flask(config_object.PROJECT_NAME, static_folder='web/static')
app.config.from_object(config_object)
# Bundles are configured here (many of them!) to generate the app.js file
if config_object.DEBUG is False:
CDN(app)
app.run(host='0.0.0.0')
3) Шаблон, который использует активы:
{% assets "js_app" %}
<script type="text/javascript" src="{{ ASSET_URL }}"></script>
{% endassets %}
4) Наконец, HTML, созданный сервером был:
<script type="text/javascript" src="/static/gen/app.js?40c12882"></script>
Мне интересно, почему HTML не содержит мой домен CDN, как это должно было быть сгенерировано следующим образом:
<script type="text/javascript" src="http://mydomain.cloudfront.net/static/gen/app.js?40c12882"></script>
Спасибо.
1 ответ
Хорошо. Нашел проблему. Последняя версия Flask-Assets на pip (0.10) не содержит функции CDN, описанной в документации для текущей версии, то есть 0.10.