2015-11-30 2 views
0

Я новичок в 2 проекта Symfony, который содержит файл SCSS в папке Resources: myproject.scssPHP Сторм: Настройка SCSS в Symfony 2

В главе HTML-файлов, версия CSS это файл входит в комплект:

@MyBundle/Resources/public/css/myproject.css 

PHP Storm указывает «Отсутствующий актив». HTML не может быть отображен, Symfony2 говорит, что актива отсутствует.

Я никогда не работал с SCSS. Как мне добиться этого при смене файла моего scss-файла, файл css создается/обновляется, а Symfony2 больше не указывает отсутствующий ресурс для моего css-пути в моем HTML-файле?

То, что я сделал до сих пор для того, чтобы решить эту проблему:

  • я установил SASS и Compass через менеджер гем Ruby.
  • В PhpStorm я настроил файл Бодрствующий «SCSS», ссылаясь на C:\Ruby\bin\scss.bat
+0

вы читали [это] (http://symfony.com/doc/current/cookbook/assetic/php.html)? – DevDonkey

+0

опубликуйте здесь свой скриншот настроек Файлового Хранителя. Также проверьте консоль в PHPStorm. Он должен иметь ошибки, если наблюдатели файлов настроены и ничего не происходит. –

ответ

0

После установки SCSS компилятора и установив правильный путь в настройках Watcher File ваш CSS будет генерироваться каждый раз, когда вы изменяете файл .scss. Этот .css файл находится по умолчанию около original .scss и поэтому, чтобы скопировать его в веб-каталог, вам нужно вручную его копировать каждый раз или настроить файл наблюдателя, чтобы сделать это для вас.

Также вы можете настроить scssphp assetic filter, чтобы сделать это вместо PhpStorm. Он будет генерировать новый файл css каждый раз, когда вы запускаете команду php app/console assetic:dump или каждый раз, когда актив загружается через ассиметричный контроллер.

Для работы с Assetic вам нужно следующий код:

{% stylesheets filter="scssphp" output="css/myproject.css" 
     @MyBundle/Resources/myproject.scss 
%} 
    <link rel="stylesheet" href="{{ asset_url }}" /> 
{% endstylesheets %}