2
私は初心者ですから、スタイルシートの仕組みを明確にしていないと思います。Rails:なぜ私のscssファイルはコンパイルされませんか?
- application.css
- home.css
私は熊手資産を実行します:現在、私は私の資産/スタイルシートに2つのファイルが持っているプリコンパイルを - 私はapplication.cssコンパイルされていることを実感します私のpublic/assetsフォルダにコピーします。 home.cssはどうですか?
詳細
私は応答が私のホームコントローラから受信された場合にのみhome.cssロードします。私は* = require_treeを削除しました。 (私はhome.cssが他のすべてのページに含まれていると推測しているからです)
私がこれを解決しようとしているのは、herokuが次のエラーを投げるためです。
ActionView::Template::Error (home.css isn't precompiled):
2012-04-29T10:48:20+00:00 app[web.1]: 5: <meta name="viewport" content="width=device-width">
2012-04-29T10:48:20+00:00 app[web.1]: 7: = stylesheet_link_tag "application"
2012-04-29T10:48:20+00:00 app[web.1]: 6: = javascript_include_tag "application"
2012-04-29T10:48:20+00:00 app[web.1]: 8: = stylesheet_link_tag params[:controller]
2012-04-29T10:48:20+00:00 app[web.1]: 9: = javascript_include_tag [:controller]
2012-04-29T10:48:20+00:00 app[web.1]: 10: = csrf_meta_tags
2012-04-29T10:48:20+00:00 app[web.1]: 11: %body
2012-04-29T10:48:20+00:00 app[web.1]:
2012-04-29T10:48:20+00:00 app[web.1]: app/views/layouts/application.haml:8:in `_app_views_layouts_application_haml__2082158123561350666_35885340'
2012-04-29T10:48:20+00:00 app[web.1]: cache: [GET /] miss
どのような問題/間違いがありますか?ありがとう!
私はすべてのCSSファイルをプリコンパイルするように指示しなければならない例えば、application.rbに
config.assets.precompile
を変更? (私はすべてのコントローラのためのCSSファイルを持っていると思う)。それとも悪い練習ですか? – Karan私は、これは各コントローラに別々のCSSを持つのがベストプラクティスではないと思います。通常(単純な場合)はすべて1つの大きなファイルにコンパイルされ、1回読み込まれます。 ファイルは好きなように分割できますが、最終的には大きなファイルになります。 –
今、私は分かる。もう一つの疑問 - 私のすべてのユーザーページ(ユーザーコントローラによって読み込まれたもの)のように、バックグラウンドを変えることは、アプリのバックグラウンドの残りの部分にどうやって行くのでしょうか? – Karan