1
我在一個奇怪的情況。我有一個在3.1中創建的應用程序。它最近升級到了Rails 3.2.6,這是我第一次開始使用佈局和視圖。 (不要問。我一直在使用控制檯模式,併爲數據庫管理應用程序)應用程序升級到3.2得到的路由錯誤樣式application.css
現在我有一個控制器和一些模型,當我訪問默認頁,一切都很好,但我看到的日誌中出現以下錯誤:
Started GET "/stylesheets/application.css" for 127.0.0.1 at 2012-07-31 13:54:45 -0500
ActionController::RoutingError (No route matches [GET] "/stylesheets/application.css"):
actionpack (3.2.6) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
actionpack (3.2.6) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
railties (3.2.6) lib/rails/rack/logger.rb:26:in `call_app'
railties (3.2.6) lib/rails/rack/logger.rb:16:in `call'
'app/assets/stylesheets'中有一個application.css文件。它目前是空白的。
我見過很多其他人問這個問題,但沒有解決方案的/答案似乎適用於我,雖然我不能說這是爲什麼。這裏是我的佈局/ application.html.erb文件看起來像:
<!DOCTYPE html>
<html>
<head>
<% if current_user %>
<title>MY TITLE - <%= current_user.full_name %></title>
<% else %>
<title>MY TITLE</title>
<% end %>
<%= stylesheet_link_tag "application", :media => "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<div id="nav_div">
<% if current_user %>
Logged in as <%= current_user.name %> (<%= current_user.email %>).
<%= link_to "Log Out", logout_path %>
<% else %>
<%= link_to "Sign Up", signup_path %> or
<%= link_to "Log In", login_path %>
<% end %>
</div>
<div id="flash_div">
<% if flash[:alert] %>
<p class="flash-error"><%= flash[:alert] %></p>
<% end %>
<% if flash[:notice] %>
<p class="flash-notice"><%= flash[:notice] %></p>
<% end %>
</div>
<%= yield %>
</body>
</html>
如果複製會發生什麼/粘貼應用程序。公共/樣式表中的CSS?可能是與資產管道 – 2012-07-31 19:05:24
@AnthonyAlberto問題,有趣的。這讓錯誤消失了。這是一個修復,但? – n8gard 2012-07-31 19:15:52
更多變通方法,除非您不想使用資產管道。如果你想使用它,告訴我什麼是你的環境,對於這個環境,給我您使用的是管道的配置(如config.assets選項。) –
2012-07-31 19:17:42