我正在开发我的第一个Rails引擎。这是一个包含资产和基本功能的管理面板布局。
我真正想要的是它基于Twitter Bootstrap + SASS。
如果我在我的引擎的gemspec文件中只有这些行:
gem.add_dependency "railties", "~> 3.2"
gem.add_dependency "sass-rails"
gem.add_dependency "bootstrap-sass"
尝试访问页面时出现此错误:
ActionView::Template::Error (couldn't find file 'bootstrap'
(in /Users/swamiatma/Documents/Dropbox/coding/ruby/gems/tkh_admin_panel/app/assets/javascripts/admin.js:9)):
但是如果我将它添加到主机应用程序gemfile:
gem 'bootstrap-sass'
所以我得到以下几行:
group :assets do
gem 'jquery-rails'
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
gem 'bootstrap-sass'
end
现在工作正常。我认为这个依赖项严格属于Rails引擎gem,应该就在那里。
是什么给出了?
答案 0 :(得分:7)
看看'rails-admin'引擎。它使用'bootstrap-sass'并且它在engine.rb中需要它:https://github.com/sferik/rails_admin/blob/master/lib/rails_admin/engine.rb
答案 1 :(得分:1)
为了将来参考,rails_admin / engine.rb中的重要一行(至少在我的情况下)如下:
require 'bootstrap-sass'
我把它添加到我的engine.rb后,错误消失了。