2011-12-13 20 views
0

私はレール3のアプリケーションで作業しており、運用環境に展開しようとしています。 私はcapistranoを使用してアプリケーションをデプロイし、update_codeタスクの後にアセットをプリコンパイルするように設定しました。Rails 3.1のアセットのプリコンパイル

アプリをデプロイするとすべてがうまく動作します。どのように私は理解できない

ActionView::Template::Error (style.css isn't precompiled): 
    14: 
    15:  %link{:rel => "shortcut icon", :href => "/favicon.ico" } 
    16:  %link{:rel => "apple-touch-icon", :href => "/apple-touch-icon.png"} 
    17:  = stylesheet_link_tag "style" 
    18:  = javascript_include_tag "libs/modernizr-1.7.min" 
    19:  = javascript_include_tag "application" 
    20: 
    app/views/layouts/application.html.haml:17:in   `_app_views_layouts_application_html_haml__1713356285_69878424198520' 

Compiled application.js (6ms) (pid 7552) 
Compiled jquery.js (4ms) (pid 7552) 
Compiled jquery_ujs.js (0ms) (pid 7552) 
Compiled home.js (94ms) (pid 7552) 
Compiled libs/dd_belatedpng.js (0ms) (pid 7552) 
Compiled libs/modernizr-1.7.min.js (0ms) (pid 7552) 
Compiled plugins.js (0ms) (pid 7552) 
Compiled script.js (0ms) (pid 7552) 
Compiled user_sessions.js (93ms) (pid 7552) 
Compiled users.js (92ms) (pid 7552) 
Compiled application.css (3ms) (pid 7552) 
Compiled handheld.css (0ms) (pid 7552) 
Compiled home.css (55ms) (pid 7552) 
Compiled style.css (0ms) (pid 7552) 
Compiled user_sessions.css (1ms) (pid 7552) 
Compiled users.css (0ms) (pid 7552) 
Compiled application.js (6ms) (pid 7541) 
Compiled jquery.js (4ms) (pid 7541) 
Compiled jquery_ujs.js (0ms) (pid 7541) 
Compiled home.js (95ms) (pid 7541) 
Compiled libs/dd_belatedpng.js (0ms) (pid 7541) 
Compiled libs/modernizr-1.7.min.js (0ms) (pid 7541) 
Compiled plugins.js (0ms) (pid 7541) 
Compiled script.js (0ms) (pid 7541) 
Compiled user_sessions.js (93ms) (pid 7541) 
Compiled users.js (94ms) (pid 7541) 
Compiled application.css (2ms) (pid 7541) 
Compiled handheld.css (0ms) (pid 7541) 
Compiled home.css (1ms) (pid 7541) 
Compiled style.css (0ms) (pid 7541) 
Compiled user_sessions.css (0ms) (pid 7541) 
Compiled users.css (0ms) (pid 7541) 

しかし、私は、ブラウザのメインページを表示しようとすると、私はこれを取得:私はこれを見サーバーの生産ログに従うことにより サーバーは、資産がコンパイルされたと私に伝えることができます。実際には、ファイルはコンパイルされません。

誰もこの種の問題に遭遇しましたか?

ありがとうございました。サーバーを再起動し

して、あなたがチェックする必要があり

config.assets.compile = true 

config.assets.compile = false 

+0

でこれを見ましたか? –

+0

こんにちはMr Nizzleさん、更新が終わった後、Apacheを再起動するのに数回試しました。私はまた、 "資産:プリコンパイル"、 "乗客:再起動"の後にプリコンパイル後にこのタスクを持っています。これはtouch tmp/restart.txtを実行します – Elendir

答えて

1

一つの解決策は、config/environments/production.rbに、プリコンパイルをチェックして、ラインを設定していない生産環境を伝えることですHALMはを探しています。assets/style.css


UPDATE

ここでは別のオプション

は、まさにそれがコンパイルされていますことを確認するためにファイルをコンパイルすることをごconfig/environments/production.rbを知らせるのです。

config.assets.precompile += %w(style.css)

あなたは `アプリケーションサーバーをrestart`ましたhttps://stackoverflow.com/a/7541958/295228

+0

私はこれをやってしまいましたが、オンデマンド "コンパイルが可能です。この場合、プリコンパイルは役に立たないと思います。とにかく、あなたの答えをありがとう。 – Elendir

+0

はい、これはパフォーマンスが崩れますが、HALMがスタイルシートを検索している場所を確認できます。私はHALMについてよく分かりませんが、HAMLは資産について知りません...今まで検索した限り'Html.erb'を' %% stylesheet_link_tag 'スタイル'%> 'を使って試してみるかもしれない資産でHAMLが動作しないかもしれません。 –

+1

私は間違いなくhamlの使用を好む。プロトタイプを開発しているので、パフォーマンスは最も重要ではありません。興味深いものが見つかったら、私は3つの資産サポートを探して、戻ってくるだろう。あなたのお時間をありがとうMr Nizzle – Elendir

関連する問題