Я хочу написать гем, который после объединения с Rails 3.1 Gemfile включает в себя несколько шаблонных файлов CSS и JS.
Я знаю о генераторах, но как я могу сделать это без них, чтобы эффекты камня можно было добавлять и удалять без чего-либо, кроме редактирования одной строки в Rails Gemfile?
В идеале, яХотелось бы, чтобы гем включал его CSS / JS по умолчанию при установке, а затем разрешил пользователю использовать генератор для генерации файлов CSS / JS, если он хочет внести какие-либо изменения.
Вот пример гемачто я скопировал из jquery-rails , который включает файлы javascript без генераторов.
css_gem/
lib/
css_gem.rb {1}
css_gem/
engine.rb {2}
app/
assets/
stylesheets/
css_gem/
index.css {3}
base.css {4}
{1} lib / css_gem.rb
module CssGem
require "css_gem/engine"
end
{2}lib / css_gem / engine.rb
module CSSGem
class Engine < Rails::Engine
end
end
{3} app / assets / stylesheets / css_gem / index.css
/*
*= require base
*/
{4} app / assets / stylesheets / css_gem /base.css
.custom { color: red; }
Rails Gemfile
gem 'css_gem', :path => 'path_to_my_local_gem'
Это не работает для меня, и Rails не видит файл CSS.Что я делаю не так?
Решение: К счастью, я нашел видео с моей рукой: http://house9.blogspot.com/2011/06/rails-31-asset-gem.html
Мне пришлось добавить вручную *= require css_gem
к моему манифесту таблицы стилей Rails (app / assets / stylesheets / application.css).Duh.