1

私はこれに数日間苦労しています-私は自分のrailsアプリにブートストラップ(および他のいくつかの宝石)を追加しましたが、何らかの理由で適切なCSSファイルがレンダリングされないため、ブートストラップスタイルが表示されません。

これが私のファイルの関連部分です:

application.html.erbapp/views/layouts

<head>
  <title>Myapp</title>
  <%= stylesheet_link_tag    "application", :media => "all" %>
  <%= javascript_include_tag "application" %>
  <%= csrf_meta_tags %>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  <script type="text/javascript" src="https://raw.github.com/twitter/bootstrap/master/js/bootstrap-dropdown.js"></script>
</head>

application.cssapp/assets/stylesheets

/*
 * 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 vendor/assets/stylesheets of plugins, if any, 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 top of the
 * compiled file, but it's generally better to create a new file per style scope.
 *
 *= require_self
 *= require_tree .
 */

bootstrap_and_overrides.css(このフォルダーには、となど、さらに多くのCSSファイルがありますgmaps4rails.css)。

そして、ページをロードしたときのサーバーログ:

$ rails server
=> Booting WEBrick
=> Rails 3.2.8 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
        SECURITY WARNING: No secret option provided to Rack::Session::Cookie.
        This poses a security threat. It is strongly recommended that you
        provide a secret to prevent exploits that may be possible from crafted
        cookies. This will not be supported in future versions of Rack, and
        future versions will even invalidate your existing user cookies.

        Called from: /Users/me/.rvm/gems/ruby-2.0.0-p0/gems/actionpack-3.2.8/lib/action_dispatch/middleware/session/abstract_store.rb:28:in `initialize'.
[2013-03-11 15:19:32] INFO  WEBrick 1.3.1
[2013-03-11 15:19:32] INFO  ruby 2.0.0 (2013-02-24) [x86_64-darwin11.4.2]
[2013-03-11 15:19:32] INFO  WEBrick::HTTPServer#start: pid=94815 port=3000


Started GET "/" for 127.0.0.1 at 2013-03-11 15:19:35 -0700
Processing by HomeController#index as HTML
  Rendered home/index.html.erb within layouts/application (2.8ms)
  Trip Load (0.2ms)  SELECT "trips".* FROM "trips" 
  Rendered layouts/_navigation.html.erb (62.0ms)
Completed 200 OK in 143ms (Views: 141.0ms | ActiveRecord: 1.3ms)

そして実際にChromeでレンダリングされるソースコード:

<head>
  <title>Myapp</title>
  <link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css" />
  <script src="/assets/application.js?body=1" type="text/javascript"></script>
  <meta content="authenticity_token" name="csrf-param" />
<meta content="GfG+KCsrNZaChqWvUz/g5RqsdHrXOtumFzHaOjJmFQg=" name="csrf-token" />
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  <script type="text/javascript" src="https://raw.github.com/twitter/bootstrap/master/js/bootstrap-dropdown.js"></script>
</head>

そして私のGemfile

gem "bootstrap-sass", '~> 2.3.0.1'
gem "simple_form"

gem 'gmaps4rails'

そしてconfig/environments/development.rb

config.cache_classes = false

# Log error messages when you accidentally call methods on nil.
config.whiny_nils = true

# Show full error reports and disable caching
config.consider_all_requests_local       = true
config.action_controller.perform_caching = false

# Don't care if the mailer can't send
config.action_mailer.raise_delivery_errors = false

# Print deprecation notices to the Rails logger
config.active_support.deprecation = :log

# Only use best-standards-support built into browsers
config.action_dispatch.best_standards_support = :builtin

# Raise exception on mass assignment protection for Active Record models
config.active_record.mass_assignment_sanitizer = :strict

# Log the query plan for queries taking more than this (works
# with SQLite, MySQL, and PostgreSQL)
config.active_record.auto_explain_threshold_in_seconds = 0.5

# Do not compress assets
config.assets.compress = false

# Expands the lines which load the assets
config.assets.debug = true

アセットパイプラインconfig/application.rbをtrueに設定していて、デバッグ設定を変更していません。私RAILS_ENVdevelopmentです。私が理解しているように、railsはboostrap_and_overrides.css.scss、呼び出しのためを含め、すべてのCSSファイルをコンパイルして提供する必要がありrequire_tree .ます。私は何度も走りましたがrake assets:precompilebundle exec rake assets:precompileそれは問題ではないと思います。Ruby 2.0.0p0(2013-02-24リビジョン39474)を実行しています。

本当に奇妙なことは、このプロジェクトの私と私のパートナーが(githubリポジトリからの)まったく同じコードを持っていて、ローカルマシンで動作しますが、私のものでは動作しないことです。誰かが何が起こっているのかについて何か意見がありますか?

4

1 に答える 1

1

Rails 3.2.15 にアップグレードすると消える Rails 3.2.6 でも同じ問題に遭遇しました。

于 2013-11-20T09:01:24.277 に答える