Прекомпиляция файла манифеста .scss с использованием конвейера ресурсов Rails 3.1 - PullRequest
17 голосов
/ 10 сентября 2011

Релизная версия Rails 3.1 имеет некоторые странные проблемы с предварительной компиляцией файла манифеста sass с расширением scss.Странно то, что файл манифеста по умолчанию application.scss компилируется нормально, и я вижу его под public/assets/.

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

config.assets.precompile += %w( user.scss admin.scss )

Насколько мне известно, я правильно запускаю задачу rake перед компиляцией.

rake assets:precompile RAILS_ENV=production

И, возможно, это помогает.Когда я создаю два новых файла манифеста с расширением css вместо scss и мне требуются исходные файлы scss, тогда эти новые файлы манифеста соблюдаются и правильно компилируются.Почему application.scss получает эту специальную обработку, а не другие файлы sass manifest?

Ответы [ 2 ]

27 голосов
/ 31 января 2012

Включите скомпилированные имена файлов в список прекомпиляции:

config.assets.precompile += %w( user.css admin.css )

Кроме того, вы можете переименовать исходные файлы в app/assets/stylesheets, чтобы включить скомпилированное расширение в исходные имена файлов, чтобы было понятно, что происходит:

user.scss -> user.css.scss
admin.scss -> admin.css.scss
0 голосов
/ 12 сентября 2011

Я подозреваю, что это может быть ошибка.

Файлы application считаются основными файлами для проекта по умолчанию. Концы, заканчивающиеся на .css и .js, включены в список прекомпиляции по умолчанию.

Правильное поведение, которое вы описываете (проявляет расширение .css).

...