更新gem twitter-bootstrap-rails后找不到icon-globe

时间:2012-05-03 02:47:45

标签: ruby-on-rails ruby-on-rails-3 twitter-bootstrap

我正在使用twitter-bootstrap-rails gem。昨晚我更新了我的宝石,并尝试使用icon-globe,但我得到的只是一个空的空间。

这是我的Gemfile:

gem 'jquery-rails'
gem 'therubyracer'
gem 'mongoid'
gem 'bson_ext'
gem 'bson'
gem 'mongo'
gem 'devise'
gem 'twitter-bootstrap-rails', :git => 'git://github.com/seyhunak/twitter-bootstrap-rails.git'

我尝试了rake tmp:clear,但这也没有效果

2 个答案:

答案 0 :(得分:1)

我前几天也遇到了这个问题。我有我的Rails服务器设置,以便我可以在他们自己的suburi下的同一台服务器上运行多个Rails应用程序。显然,bootstrap_and_overrides.css.less中的资产路径助手不包括精灵的相对路径,而是将背景图像URL指向/ assets而不是/ suburi / assets。

按照我在此处找到的内容:https://github.com/rails/rails/issues/3365我能够收集到预编译资产时我需要做的事情:

RAILS_RELATIVE_URL_ROOT="/suburi" rake assets:precompile

这会在您预编译时设置环境中的相对根,然后一切正常工作。

真正让我感到厌恶的是,在开发过程中一切正常。一旦我将其推送到生产服务器,图标就会停止显示。我一直认为我的服务器或代码存在问题。在我预编译资产时,它一直只是资产路径助手,不包括suburi。

在运行预编译之前,只需在RAILS_RELATIVE_URL_ROOT环境变量中设置完整的suburi路径,它就可以工作。

更新:您可以通过添加

config / application.rb 文件中设置此变量
config.action_controller.relative_url_root = '/suburi'

这将是最佳选择,因为在部署时不需要额外输入。

你可以在这里阅读:

http://guides.rubyonrails.org/configuring.html#configuring-action-controller

答案 1 :(得分:0)

你试过了吗?

bundle exec rake assets:precompile

关于您的生产环境?