Понимание комплекта активов - PullRequest
4 голосов
/ 02 августа 2011

У меня проблемы с пониманием причин, по которым работает комплект Assetic, и, к сожалению, официальная документация не слишком многословна.

Я просто не вижу ничего хорошего в том, как он работает со статическими путямии URL.Скажем,

{{ asset("bundles/mybundle/css/main.css") }}

переводится в "/bundles/mybundle/css/main.css".Что, просто добавив его к «/»?Но я могу сделать это вручную.Я ожидал по крайней мере что-то вроде STATIC_DIR в Django, которое указывает место, где все ваши статические файлы живут и служит статическим корневым каталогом.

И

{% stylesheets '@MyBundle/Resources/public/css/main.css' %}
    <link rel="stylesheet" href="{{ asset_url }}" type="text/css" media="all" />
{% endstylesheets %}

становится чем-то вроде

<link rel="stylesheet" href="/app_dev.php/css/618ab99_main_1.css" type="text/css" media="all" />

Но это не добавляет гибкости вашим макетам - вам все равно придется редактировать файл макета, когда имя статического файла изменяется.И вам все еще нужно написать HTML-тег «link» вручную.

Учитывая тот факт, что вы можете использовать консоль Sf2 для создания в web / dir символической ссылки на общую папку вашего пакета, я нахожу, что Assetic работает несколько неясным,Я уверен, что что-то упустил, так что я надеюсь, что кто-то может это прояснить для меня.Спасибо.

1 Ответ

4 голосов
/ 02 августа 2011

Использование одного скрипта не будет иметь большого эффекта.Управление активами имеет и другие преимущества:

Но с помощью Assetic вы можете манипулировать этими активами по своему усмотрению (или загружать их из любого места) перед их обслуживанием.Это означает, что вы можете:

Minify and combine all of your CSS and JS files
Run all (or just some) of your CSS or JS files through some sort of compiler, such as LESS, SASS or CoffeeScript
Run image optimizations on your images

Более того, вы можете комбинировать их для меньшего количества запросов, фильтровать их, контролировать URL, кэш и т. Д.Ресурс

Мне нравится: p

...