第二次修改 感谢所有有用的指导,我能够通过回滚我的ruby版本来修复错误。我不得不做几个其他的调整,但这是主要的,特别是考虑到我正在按照教程。
修改 在建议更改cjn后,我仍然没有成功。我收到了这个错误:
Static pages Home page should have the content 'Sample App'
Failure/Error: visit '/static_pages/home'
ActionView::Template::Error:
couldn't find file 'jquery'
(in /Users/me/rails_projects/sample_app/app/assets/javascripts/application.js:13)
# ./app/views/layouts/application.html.erb:7:in `_app_views_layouts_application_html_erb__1639650066512045899_2207712920'
# ./spec/requests/static_pages_spec.rb:8:in `block (3 levels) in <top (required)>'
----原帖----
我是编程RoR的新手。目前我正在阅读Michael Hartl,&#34; Ruby on Rails Tutorial&#34;。在过去的一天左右,我一直坚持这个问题。
在apps / assets / stylesheets中,我有一个名为custom.css.scss的文件。在这个文件中我有一行:
@import "bootstrap";
然而我收到了错误:
Failure/Error: visit '/static_pages/about'
ActionView::Template::Error:
File to import not found or unreadable: bootstrap.
Load paths:
/Users/me/rails_projects/sample_app
/Users/me/rails_projects/vendor/assets/stylesheets
(in /Users/me/rails_projects/sample_app/app/assets/stylesheets/application.css)
# (sass):15
# ./app/views/layouts/application.html.erb:5:in `_app_views_layouts_application_html_erb__2871330256659661911_2185769240'
# ./spec/requests/static_pages_spec.rb:39:in `block (3 levels) in <top (required)>'
在我的Gemfile中,我有:
source 'https://rubygems.org'
ruby '2.1.0'
#ruby-gemset=railstutorial_rails_4_0
gem 'rails', '4.0.5'
gem 'bootstrap-sass', '2.3.0.1'
gem 'sprockets', '2.12.1'
group :development, :test do
gem 'sqlite3', '1.3.8'
gem 'rspec-rails', '2.13.1'
end
group :test do
gem 'selenium-webdriver', '2.35.1'
gem 'capybara', '2.1.0'
end
gem 'sass-rails', '4.0.1'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.1'
gem 'jquery-rails', '3.0.4'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'
group :doc do
gem 'sdoc', '0.3.20', require: false
end
group :production do
gem 'pg', '0.15.1'
gem 'rails_12factor', '0.0.2'
end
我已经看了很多关于如何解决类似问题的其他帖子,但无济于事。
提前感谢您的帮助!
答案 0 :(得分:2)
花了一天的时间来解决这个问题,我想我会分享我的解决方案。我也正在关注Hartl的Rails教程,并且通过在cloud9帐户中运行所有内容来遵循他的建议。
我的答案是重启服务器,然而,这并不像简单的ctrl + c那么容易,因为我完全关闭了我的终端窗口。结果,我试图发出“rails server -b $ IP -p $ PORT”,但是,我收到了一个`bind':地址已经在使用..'错误。
所以这就是我解决它的方法:
从终端:
1。)$ lsof -i:8080 - &gt;输出将显示进程占用端口8080的PID:“httpd 1234 ....”
2。)$ kill -9 1234
所有错误消失,bootstrap正常运行!
最后(也是最重要的),应该注意的是,在教程中,您应该始终发出“rails server -b $ IP -p $ PORT”而不是“rails server”。这是关键。
答案 1 :(得分:1)
同样的问题对我来说也是如此,而我已经完成了Michael Hartl的教程(https://www.railstutorial.org/book/)。但是在我通过改变gem文件中gems的顺序给出bundle命令之后,这个问题就解决了。我猜测上面的问题,主要是因为c9编辑器没有正确刷新已安装的gem。
答案 2 :(得分:1)
对我来说,解决方案是将样式表文件从css重命名为scss
mv app/assets/stylesheets/application.css app/assets/stylesheets/application.scss
希望有所帮助
答案 3 :(得分:0)
对于听起来有效的正式答案......
您是否已经完成了github存储库安装说明? https://github.com/twbs/bootstrap-sass使用Rails 3.1+,你已经有了sass-rails以便可以,但是你已经将@import "bootstrap-sprockets";
添加到了你的application.css文件和//= require jquery
&amp;你的application.js文件是//= require bootstrap-sprockets
吗?
另外,自从.css或.js文件中添加代码后,您是否重新启动了rails服务器?
答案 4 :(得分:0)
如果您正在执行Rails教程并在云中进行开发(c9),则应重新启动工作区服务器。之后再次执行rails测试,它将起作用。