我正在使用
seyhunak’s gem使用Twitter Bootstrap开发3.1 Rails应用程序.
在生产模式下,我能够通过管道预编译使用基本的bootstrap CSS和JS:
RAILS_ENV=production bundle exec rake assets:precompile
使用gem文件:
group :assets do gem 'sass-rails','~> 3.1.5' gem 'coffee-rails','~> 3.1.1' gem 'uglifier','>= 1.0.3' gem "twitter-bootstrap-rails" end
和application.js文件:
//= require_tree . //= require jquery //= require jquery_ujs //= require twitter/bootstrap //= require bootstrap-tab //= require bootstrap-modal //= require bootstrap-dropdown //= require bootstrap-popover
应用程序工作正常,除了模态和下拉列表等引导插件.这些插件作为供应商资产目录中存在的静态JavaScript库存在:
/vendor/assets/javascripts/bootstrap-dropdown.js ...
我不确定这些文件是否正在预编译,我怎么能设法这样做?
解决方法
找到了!
这不是引导程序的问题,而是正确预编译jQuery.而且不需要为单个插件包含javascript文件.它们已经包含在主要的twitter / bootstrap中.
通过重新安排javascripts文件解决了问题,如下所示:
的application.js
//= require jquery //= require jquery_ujs //= require twitter/bootstrap
的Gemfile
group :assets do gem 'sass-rails','>= 1.0.3' gem "twitter-bootstrap-rails" end gem 'jquery-rails','>= 1.0.12'
预先处理资产并开展工作!