flask-assets: перед началом работы развернутые страницы необходимо перезагрузить несколько раз
Я использую flask-assets для связывания, минимизации и управления версиями (чтобы убедиться, что когда мы меняем файл CSS или JS, браузер загружает новую версию вместо того, что находится в его кеше... но, конечно, мы хотим, чтобы она загружалась из кеша впоследствии).
Поскольку на сайте всего несколько страниц, и все они используют разные ресурсы, я определил пакеты в самих шаблонах, как описано в разделе " Только шаблоны" в документации:
{% assets filters="jsmin", output="gen/our-page_packed.js",
"blah.js", "yadda.js", "rhubarb.js", "wibble.js" %}
<script src="{{ ASSET_URL }}"></script>
{% endassets %}
{% assets filters="cssmin", output="gen/our-page_packed.css",
"css/foo.css", "css/bar.css" %}
<link rel="stylesheet" href="{{ ASSET_URL }}">
{% endassets %}
ASSETS_DEBUG
является ложным в производственном процессе, и сайт не локализован и не обслуживается через CDN или S3.
Проблема в том, что когда мы запускаем производство, связки изначально явно не создаются. На страницах отсутствуют CSS и Javascript, а журнал ошибок apache содержит такие ошибки:
Файл не существует: /srv/our-client/our-client/static/gen/our-page_packed.css, реферер: https://app.our-client.com/quux/123/xyz/
После того, как мы перезагрузим страницу несколько раз, в течение минуты или двух, все это начинает работать. Время от времени мы слышим жалобы клиентов на то, что похоже на отсутствие CSS или JS, но, похоже, оно не сохраняется, и неясно, что это связанная проблема.
Боюсь, я далек от эксперта Flask (сайт был создан другим разработчиком; я добавил флеш-активы), но это кажется довольно простой настройкой. Могу ли я что-нибудь сделать, чтобы файлы комплекта создавались раньше?