Rails + Twitter Bootstrap:导入未找到或不可读的文件:twitter / bootstrap

时间:2013-04-03 10:22:33

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

我正在尝试使用Twitter Bootstrap(gem twitter-bootstrap-rails)设置Rails应用程序,但我仍然无法克服错误

File to import not found or unreadable: twitter/bootstrap.

我在宝石的官方Github上发现了这个问题,但没有一个解决方案对我有用。 这是我的设置: 的的Gemfile

gem "twitter-bootstrap-rails"
gem 'font-awesome-rails'
gem 'sass-rails',   '~> 3.2.3'
group :assets do
  #gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'therubyracer', :platforms => :ruby
  gem 'uglifier', '>= 1.0.3'
end

application.css

 *= require_self
 *= require bootstrap_and_overrides
 *= require font-awesome
 *= require_tree .

bootstrap_and_overrides.css.sass

@import "twitter/bootstrap";
@import "twitter/bootstrap/bootstrap";
@import "twitter/bootstrap/responsive";

// Font Awesome
@import "fontawesome";

// Glyphicons
@import "twitter/bootstrap/sprites.scss";

正确设置我错过了什么?

由于

11 个答案:

答案 0 :(得分:33)

我们遇到了同样的问题,我刚刚重新启动了rails服务器并且工作正常

答案 1 :(得分:6)

如果您已经尝试关闭服务器并重新启动它,那么您的问题可能是从您的sass文件生成的缓存的css文件。其原因可能是一些实时重载的变化,它预先渲染了几个scss / haml类型的文件。如果不是这样的话那么

  1. 阅读错误消息并确定导致错误的scss文件。
  2. 找到沿sass文件生成的css文件(即custom.css.scss将生成custom.css)。
  3. 删除该文件,刷新页面,如果此文件删除在assets / stylesheets和temp / cache下找到的整个缓存,则

答案 2 :(得分:3)

出于某种原因,我必须明确要求宝石才能使其正常工作。正如在this github issue comment中建议的那样修复bootstrap-sass的类似错误,很可能没有自动加载gem。将require "twitter-bootstrap-rails添加到eg config / application.rb文件中以明确要求它。

答案 3 :(得分:2)

将bootstrap-sass gem降级为v2.3.2,如下所示: 宝石' bootstrap-sass',' 2.3.2'

我做了一个捆绑升级,升级了bootstrap gem。这个(版本降级)为我解决了这个问题。

答案 4 :(得分:1)

我的工作方式就是改变Twitter Bootstrap gem - 我使用了bootstrap-sass gem,在Github页面上描述了所有内容,我没有发现任何问题。

答案 5 :(得分:1)

您是否尝试编译资产?

    rake assets:precompile

答案 6 :(得分:1)

我通过在我的Gemfile中添加gem 'bootstrap-sass', '3.0.2.1'解决了这个问题(根据最近的文档)。确保之后运行bundle install

答案 7 :(得分:1)

我在Michael Hartl的RailsTutorial.org程序中搜索问题时发现了这个问题。我无意中允许sprockets gem升级到2.12.1(它被锁定在Gemfile.lock中)。强制将其降级到2.11.0修复了此错误并允许较旧的bootstrap-sass(2.3.2.0)gem正常工作。

回到学习!!

答案 8 :(得分:1)

这里没有什么对我有用。我放弃了,下载了Bootstrap本身,将文件放入我的资产中,并将它们包含在我的CSS中。修好了。

答案 9 :(得分:0)

在资产组和捆绑安装中添加以下gem

gem "therubyracer"
gem "less-rails"
gem "twitter-bootstrap-rails"

答案 10 :(得分:0)

尝试添加

gem 'sass-rails'

到您的Gemfile