Rails 3.2 のアセット パイプラインに大きな問題があるようです。すべては、開発環境での作業中に単一のシンプルなスタイルを application.css.scss に追加したかったために始まりました。過去にこれを問題なく実行しましたが、キャッシュが発生しないため機能します (ご想像のとおり)。
しかし、今日新しいスタイルを追加しようとすると、Rails は更新されたスタイルの読み込みを拒否しました。環境設定を確認したところ、すべて development.rb で正しいように見えますが、
config.assets.compress = false
config.assets.debug = true
私はいくつかの調査を行い、開発中のレール 3.1 アセット パイプライン css キャッシングに出くわしました。その質問で与えられたアドバイスに従って、ある時点でアプリケーションを本番モードで実行し、クリーンアップが必要な場合に備えて、tmp/cache
フォルダーを削除し、クリーンアップを実行したことを確認しました.rake assets:clean
このすべての後、まだ運がありません。骨の折れる間違いを犯していないことを確認するために、スタイルを一時的に別のスタイルシートに移動しました。問題はありません!それは完璧に機能しました!そのため、スタイルを元に戻しましたが、再度読み込まれません。
コンソールも確認しました。他のスタイルシートを正しくリロードしましたが、元のスタイルシートについては言及していません。
さて、ここからが本題です。最後の努力として、ブラウザのキャッシュをクリアしてみました。通常は問題ありませんが、何かがキャッシュされて問題が発生している可能性があると思いました。私はそれをクリアしてアプリをリロードしました....スタイルはまったくロードされていません!
私のすべての application.css.scss スタイルが以前の時点でキャッシュされていたようで、今ではそれらを再読み込みできません!
アップデート:
私はまだ問題を解決していませんが、main.css.scss (名前は重要ではありません) という新しいスタイルシートを作成し、すべてのスタイルを新しいスタイルシートに移動することで回避しました。これ//= require_tree .
は、マニフェストのディレクティブにより機能します。
しかし、元のスタイルシートが機能しなくなった理由を誰かが明らかにできる場合は、ぜひ知りたいです!