Всякий раз, когда я запускаю команду php app/console assetic:dump
все мои активы (CSS, JavaScript, изображения) успешно помещены в web/
папка. Единственная проблема, с которой я сталкиваюсь, заключается в том, что Assetic меняет имена файлов изображений, предположительно для целей очистки кэша, что мешает изображениям, на которые есть ссылки в моих файлах css.
Когда я вручную помещаю изображение в web/images/masthead-4.jpg
, это появляется правильно. Я хотел бы, чтобы кэш разрушался на изображениях, если это возможно. Я бы предпочел, чтобы одно из этих решений работало:
Я использую обработанное изображение в своем правиле CSS, например,
.is--site_landing {
background: transparent url('../images/d755b65-aa84794_masthead-4_1-86f4322.jpg') top center no-repeat;
background-size: cover;
}
Получите изображения для передачи из приложения / Resources / public / images в
Веб / изображения, не имея Assetic изменить имя файла?
Мои изображения находятся в %kernel.root_dir%/app/Resources/public/images
,
Например, скажем, у меня есть файл %kernel.root_dir%/app/Resources/public/images/masthead-4.jpg
,
php app/console assetic:dump
для файла изображения есть:20:22:40 [file+] /our_stuff/admin/symfony/app/../web/images/d755b65-aa84794.jpg
20:22:40 [file+] /our_stuff/admin/symfony/app/../web/images/d755b65-aa84794_masthead-4_1-86f4322.jpg
Теперь, когда файл назван d755b65-aa84794_masthead-4_1-86f4322.jpg
или же d755b65-aa84794.jpg
мое правило css для фонового изображения не находит изображение.
%kernel.root_dir%/app/Resources/public/images
.is--site_landing {
background: transparent url('../images/masthead-4.jpg') top center no-repeat;
background-size: cover;
}
{% stylesheets
'css/style.css.scss'
filter='cssrewrite'
%}
<link rel="stylesheet" href="{{ asset_url }}">
{% endstylesheets %}
{% javascripts
'js/jquery-1.11.2.min.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{%image
'images/masthead-4.jpg'
%}
{% endimage %}
Дополнительная информация:
Я бегу:
Активик предназначен для переработки активов. Не используйте его для изображений, если вам не нравится обрабатывать ваши изображения.
Во-первых, удалите это, вам это не нужно.
{%image
'images/masthead-4.jpg'
%}
{% endimage %}
Далее используйте php app/console assets:install --symlink
для создания символической ссылки в web
папка. Таким образом, ваш файл CSS может получить доступ к файлу изображения.
Других решений пока нет …