我有一组非常简单的测试(来自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)>'
我如何需要Bootstrap:
gem 'bootstrap-sass', '2.3.2.0'
中导入bootstrap。 @import "bootstrap";
。*= require_self
*= require_tree .
我的网站使用bootstrap的样式正确呈现。
答案 0 :(得分:1)
如果某些人从rails 3.x升级到4并且他们的gemfile中仍然有group :assets do
块,则会遇到此问题。在轨道4 you have to get rid of the assets group
从gem文件中删除“group:assets do”和“end”(如果存在)。
group :assets do
gem 'bootstrap-sass'
end
有这个错误的其他人只需重新启动服务器就可以修复它,还有一些人能够通过对lib / bootstrap-sass.rb文件的一个小改动来修复同样的错误,如同documented here一样。拉请求。
答案 1 :(得分:0)
我在rails 4中遇到了同样的问题。我已经将“bootstrap”和“bootstrap-sprockets”导入到我的scss文件中,并且HTML页面工作正常,但是rake测试失败了。
我已经将gem'bootstrap-sass'添加到了group:test和:我的gemfile中的开发,如下所示:
group :assets, :test, :development do
gem 'bootstrap-sass', '2.3.2.0
end
我不知道这是否是最佳解决方案,但它对我有用。