RailsTutorial:添加@import“bootstrap”后出错

时间:2014-08-31 16:56:37

标签: css ruby-on-rails twitter-bootstrap railstutorial.org

我正在关注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'

我对此很新,我不确定出了什么问题。非常感谢任何帮助。谢谢!

4 个答案:

答案 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
  •   

这对我有用,我又回到了正轨。感谢所有发布的解决方案!