我正在关注Michael Hartl的rails教程(第5章,第5.1.2节)。该应用程序正常工作,直到我按照这一步骤,即创建一个新文件:
app/assets/stylesheets/custom.css.scss
然后加入:
@import "bootstrap";
然后我重新启动了我的rails服务器(本地托管),并在导航到以前工作时收到此错误消息:
http://localhost:3000/static_pages/home
以下是返回的错误消息:
Errno::ENOENT in StaticPages#home
Showing /Users/chows/rails_projects/sample_app/app/views/layouts/application.html.erb where line #5 raised:
No such file or directory - /Users/chows/rails_projects/vendor
(in /Users/chows/rails_projects/sample_app/app/assets/stylesheets/static_pages.css.scss)
2: <html>
3: <head>
4: <title><%= full_title(yield(:title)) %></title>
5: <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
6: <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
7: <%= csrf_meta_tags %>
app/views/layouts/application.html.erb:5:in `_app_views_layouts_application_html_erb__2762850417459261999_70126593557460'
我对此很新,我不确定出了什么问题。非常感谢任何帮助。谢谢!
答案 0 :(得分:0)
嘿嘿chows我遇到了完全相同的问题,这就是我设法修复它的方法。
在迈克尔要求使用gem&#39; bootstrap-sass&#39; 2.3.2.0&#39;这本书上,我厌倦了使用这个版本的gem,这是我发现的唯一解决方案有用的是使用最新版本的gem&#39; bootstrap-sass&#39;,#3.2; 3.2.0.1&#39;。
替换&#39; bootstrap-sass&#39;,&#39; 2.3.2.0&#39;与gem&#39; bootstrap-sass&#39;,&#39; 3.2.0.1&#39;运行捆绑包更新,然后按捆绑安装。您将注意到某些css内容将关闭,请尝试通过访问最新的官方引导程序文档来修复它。
欢呼声
答案 1 :(得分:0)
我尝试了这两种解决方案,但它们都遇到了不同的问题。 3.2.0.1使得它现在抱怨某些图像资产不存在,并且删除application.css使得它实际上不应用引导程序。我为解决你的问题所做的只是mv供应商到一个更高的目录,例如
mv vendor ../
在你的sample_app(或任何你命名当前的回购)中并且有效。不知道为什么会这样做。
虽然我认为我的解决方案只是一种解决方法而且不正确,因为根据这本书, &#34;供应商/资产:来自第三方供应商的资产&#34; 会暗示每个应用程序会有一组不同的第三方供应商(或者至少我想象会有)?
需要将引导程序或引导程序配置为读取应用程序的供应商,而不是直接从工作目录中删除(不知道如何完成此操作)。
答案 2 :(得分:0)
mv vendor ../
(谢谢你)
确保你引导回到书中的一套,2.3.2.0。
答案 3 :(得分:0)
如果有人遇到与我相同的问题,请更新我自己的问题。
我尝试删除:
app/assets/stylesheets/application.css
并且应用程序加载正常。然而,应用程序仍然没有加载引导程序,它看起来没有像Hartl的。我也觉得这没有妥善解决问题。
然后我找到了适合我的解决方案:Bootstrap is not working with Rails 4
引用:
sass-rails中存在一个已知的问题。 https://github.com/rails/sass-rails/issues/191
尝试将sass-rails锁定到版本4.0.3,删除Gemfile.lock并再次运行bundle install。
- 用户提供的答案 yetti
这对我有用,我又回到了正轨。感谢所有发布的解决方案!