Подтвердить что ты не робот

Предварительная компиляция файла манифеста .scss с использованием конвейера Rails 3.1

В выпуске Rails 3.1 есть некоторые странные проблемы с предварительной компиляцией файла sass manifest с расширением 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?

4b9b3361

Ответ 1

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

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

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

user.scss -> user.css.scss
admin.scss -> admin.css.scss

Ответ 2

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

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

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