为什么我的rails应用程序中的基本css不会加载?

时间:2016-08-04 19:36:59

标签: ruby-on-rails asset-pipeline

嗨,我无法让我的css加载到我的基本rails应用程序中。我做了rails g controller static_pages 这给了我一个static_pages.scss,默认情况下应该由资产管道加载吗?我有require_tree。在我的application.css文件中:

/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
 * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any styles
 * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
 * file per style scope.
 *
 *= require_tree .
 *= require_self

 */

这是我的static_pages.scss文件:

// Place all the styles related to the static_pages controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/

body {
  background-color: red;
}

当我查看static_pages#主页时,背景是白色的,所以css没有加载。

这是我的application.html.erb:

<!DOCTYPE html>
<html>
<head>
  <title>t</title>
  <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true %>
  <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
  <%= csrf_meta_tags %>

  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">

  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>

</head>
<body class="container-fluid">

  <%= yield %>

</body>
</html>

我没有对应用程序进行任何配置更改。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

尝试以下方式,因为我得到了红色背景;

static_pages_controller.rb

class StaticPagesController < ApplicationController
end

的routes.rb

Rails.application.routes.draw do

  root 'static_pages#home'

end

home.html.erb

screenshot.png

static_pages.scss

// Place all the styles related to the static_pages controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/
body {
  background-color: red;
}

application.html.erb

 <!DOCTYPE html>
<html>
<head>
  <title>Apple</title>
  <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true %>
  <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
  <%= csrf_meta_tags %>
</head>
<body>

<%= yield %>

</body>
</html>

application.css

/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
 * or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any styles
 * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
 * file per style scope.
 *
 *= require_tree .
 *= require_self
 */

希望它有所帮助!!!