У меня есть приложение rails 3.1, которое использует макет по умолчанию с css в "/app/assets/stylesheets/application.css" в соответствии со стандартной практикой.Это прекрасно работает с конвейерной обработкой ресурсов для основной части моего приложения.
Но я использую другой макет "создания отчетов", когда создаю отчет, который использует /app/views/layouts/showreports.html.расположение эрб выглядит следующим образом:
<!DOCTYPE html>
<html>
<head>
<%= stylesheet_link_tag "showreports" %>
<%= javascript_include_tag "showreports" %>
<%= csrf_meta_tag %>
</head>
<body>
<div id="mainarea" class="container">
<div class="span-24 last">
<%= yield %>
</div>
</div>
</body>
Я использую rake assets:clean; rake assets:precompile
для предварительной компиляции своих ресурсов и проверки, что все выглядит хорошо в файле манифеста (/public/assets/manifest.yml), и я надеваюне вижу ссылок на showreports.css или showreports.js.
Когда я тестирую свою программу в режиме dev, неудивительно, что она не может найти эти файлы.
Я предполагаюэто основной вопрос звездочек с rails 3.1, но я подумал, что звездочки будут достаточно умны, чтобы проанализировать все файлы макета для ресурсов (кроме файла application.html.erb по умолчанию).
Просто интересно, может ли это быть ошибкой или просто моим недоразумением о том, как это должно работать.
Ура,
Грег
ОБНОВЛЕНИЕ
После более долгих попыток я отвечаю на свой вопрос, так как это имеет для меня наибольшее значение ...
Этот ответ действительно дал правильную подсказку
То, что я делал неправильно, использовало файлы с именами "showreports.css" и "showreports.js" в качестве файлов манифеста.
Мое исправление заключалось в создании /app/assets/stylesheets/showreports
и /app/assets/javascripts/showreports
и затем переименовать мои showreports. (css | js) в application. (css | js) внутри соответствующих им каталогов.
После этого rake assets:precompile
нашел их и добавил их правильно в файл манифеста.