Symfony и активный фильтр cssrewrite с использованием именованных активов

У меня проблема с использованием активов и фильтра cssrewrite с использованием именованных активов. Я определил именованный актив в assets.yml следующим образом:

assetic:
  assets:
    mycssfiles:
      inputs:
        - 'bundles/mybundle/css/mystyles.css'

В моем шаблоне ветки я использую этот ресурс с фильтром cssrewrite:

{% stylesheets '@mycssfiles' output='css/styles.css' filter="cssrewrite" %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}

Используя эту конфигурацию, результат css имеет неверный URL-адрес для изображений, включенных в файл css. Но если я не использую именованный ресурс, он работает правильно, и URL-адреса изображений переписываются правильно. Этот код работает нормально:

{% stylesheets 'bundles/mybundle/css/mystyles.css' output='css/styles.css' filter="cssrewrite" %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}

Фильтр cssrewrite не работает с именованными активами? Я знаю, что это не работает с синтаксисом @AppBundle, но я не знаю, работает ли это с именованными активами, или я делаю что-то не так.


person Carlos Mayo    schedule 15.10.2015    source источник
comment
Это всего лишь предположение, и у меня нет подтверждения, но, видимо, именно синтаксис @ вызывает проблемы с cssrewrite.   -  person jahller    schedule 15.10.2015
comment
Я знаю, что cssrewrite не работает с @AppBundle, например здесь объясните, но ничего не говорите об именованных активах   -  person Carlos Mayo    schedule 15.10.2015


Ответы (1)


Я публикую свою конфиг для fontawesome, надеюсь, это будет полезно :):

# Assetic Configuration
assetic:
    debug: "%kernel.debug%"
    use_controller: false
    bundles :       [AppBundle]
    java: /usr/bin/java
    filters:
        cssrewrite: ~
    assets:
    font_awesome:
        inputs:
            - "bundles/app/bower_components/components-font-awesome/css/font-awesome.min.css"
        filters:
            - cssrewrite

Часть ветки

    {% stylesheets filter='cssrewrite'
            '@font_awesome'
    %}
    <link rel="stylesheet" href="{{ asset_url }}" type="text/css" media="all"/>
    {% endstylesheets %}
person rommct    schedule 15.10.2015
comment
Спасибо, это работает. Проблема заключалась в том, что я использовал добавление combine=true в код {% stylesheets ... в шаблонах веток. - person Carlos Mayo; 15.10.2015