Symfony Assetic Объединить все файлы в один

Есть ли способы объединить все файлы *.css, например, из многих макетов в один, используя родной Symfony Assitic Manager.

Пример:

**base.html.twig**    
{% block stylesheets %}
      {% stylesheets   filter='cssrewrite,uglifycss' output='css/compiled/main.css'
      'bundles/sscore/bootstrap/css/bootstrap.css' %}
      <link rel="stylesheet" href="{{ asset_url }}"/>
      {% endstylesheets %}
{% endblock %}

**index.html.twig extends base.html.twig**    
{% block stylesheets %}

      {{ parent() }}

      {% stylesheets   filter='cssrewrite,uglifycss' output='css/compiled/main.css'
      'bundles/sscore/main.css' %}
      <link rel="stylesheet" href="{{ asset_url }}"/>
      {% endstylesheets %}
{% endblock %}

В prod env этот пример дает мне два файла, но я хочу один meged?


person wtorsi    schedule 26.09.2014    source источник


Ответы (2)


Я не думаю, что Assetic делает то, что вы от него хотите.

Я думаю, что самый простой способ поместить их в один файл — просто включить родительский файл в список таблиц стилей и переопределить родительский блок, например...

**index.html.twig extends base.html.twig**     
{% block stylesheets %}
    {% stylesheets filter='cssrewrite,uglifycss' output='css/compiled/main.css'
        'bundles/sscore/bootstrap/css/bootstrap.css'
        'bundles/sscore/main.css'
        %}
        <link rel="stylesheet" href="{{ asset_url }}"/>
    {% endstylesheets %}
{% endblock %}
person qooplmao    schedule 26.09.2014

вы можете использовать scssphp , но для этого вам нужно будет установить (scssphp).

{% stylesheets filter="scssphp" output="styles/css/default_g.css"
    "https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.css"
    "styles/css/myfileone.css"
    "styles/css/myfileone2.css"
    "styles/css/main.css"
    "styles/css/myfile.css"
%}
<link rel="stylesheet" href="{{ asset('styles/css/default_g.css') }}" />
{% endstylesheets %}
person Jawad    schedule 13.10.2016