0

我有一组非常简单的测试(来自 Rails 教程),但所有测试都因以下错误而失败:

File to import not found or unreadable: bootstrap

任何想法发生了什么?

详情如下===================================

示例测试:

  describe "Help page" do
    it "should have the content 'Help'" do
        visit '/static_pages/help'
        expect(page).to have_content('Help')
    end
    # Title test.
      it "should have the right title" do
        visit '/static_pages/help'
        expect(page).to have_title("#{base_title} | Help")
      end
  end

测试失败消息:

8) Static pages Home page should have the base title
     Failure/Error: visit '/static_pages/home'
     ActionView::Template::Error:
       File to import not found or unreadable: bootstrap.
       Load paths:
         /Users/donald/Projects/rails_projects/sample_app/app/assets/images
         /Users/donald/Projects/rails_projects/sample_app/app/assets/javascripts
         /Users/donald/Projects/rails_projects/sample_app/app/assets/stylesheets
         /Users/donald/Projects/rails_projects/sample_app/vendor/assets/javascripts
         /Users/donald/Projects/rails_projects/sample_app/vendor/assets/stylesheets
         /Users/donald/.rvm/gems/ruby-2.0.0-p247@railstutorial_rails_4_0/gems/turbolinks-1.1.1/lib/assets/javascripts
         /Users/donald/.rvm/gems/ruby-2.0.0-p247@railstutorial_rails_4_0/gems/jquery-rails-3.0.4/vendor/assets/javascripts
         /Users/donald/.rvm/gems/ruby-2.0.0-p247@railstutorial_rails_4_0/gems/coffee-rails-4.0.1/lib/assets/javascripts
         (in /Users/donald/Projects/rails_projects/sample_app/app/assets/stylesheets/custom.css.scss:1)
     # ./app/assets/stylesheets/custom.css.scss:1
     # ./app/views/layouts/application.html.erb:5:in `_app_views_layouts_application_html_erb__1482688987114081587_70170540160220'
     # ./spec/requests/static_pages_spec.rb:14:in `block (3 levels) in <top (required)>'

我如何需要引导程序:

  1. 我在我的 gemfile 中导入 bootstrap gem 'bootstrap-sass', '2.3.2.0'
  2. 我在 custom.css.sass 文件中需要它:@import "bootstrap";.
  3. 我在 application.css 文件中需要它: *= require_self *= require_tree .

我的网站使用引导程序的样式正确呈现。

4

2 回答 2

1

如果他们从 rails 3.x 升级到 4 并且他们仍然group :assets do在您的 gemfile 中有一个块,那么有些人会遇到这个问题。在 Rails 4中,您必须摆脱资产组

如果存在,请从您的 gemfile 中删除“group :assets do”和“end”。

group :assets do
gem 'bootstrap-sass'
end

其他有此错误的人可以通过简单地重新启动服务器来修复它,还有其他人能够通过对 lib/bootstrap-sass.rb文件进行微小更改来修复相同的错误,如拉取请求中所述。

于 2013-11-04T04:20:38.740 回答
0

我在 rails 4 中遇到了同样的问题。我已将“bootstrap”和“bootstrap-sprockets”导入到我的 scss 文件中,HTML 页面运行良好,但 rake 测试失败。

我已将 gem 'bootstrap-sass' 添加到我的 gemfile 中的组 :test 和 :development 中,如下所示:

group :assets, :test, :development do gem 'bootstrap-sass', '2.3.2.0 end

我不知道这是否是最好的解决方案,但它对我有用。

于 2016-01-21T18:47:32.290 回答