以下の内容はhttps://hyottokoaloha.hatenablog.com/entry/2015/08/23/185558より取得しました。


AssetPipelineでcssに画像指定

またもやAssetPipelineにやられてました。

症状

cssに記述した画像がrailsで表示されなくなった

clobberしてprecompileしたら表示されなくなりました。

該当部分はpage.css.scssというファイルに以下のように記述されていました。

.frame #title{
    height:91px;
    background-image: image-url("picture.png");
    background-repeat:repeat-x;
    color:#FFF;
}

ここで、image-urlはrailsのヘルパーで、ハッシュ値が付加された画像を表示できるようにするものです。

原因

sassコンパイルした事

sassコンパイルした事が原因でした。コンパイル先のpage.cssを見ると、image-urlがそのままでした。cssの記法としてimage-urlはないのでここでエラーとなっていました。

解決

page.cssを削除

page.cssを削除したら問題なく表示されるようになりました。

app/assets/application.cssにscssファイルを追加する際はどのように書けばいいか少し迷ったのですが、page.css.scssの場合も普通に

*= require page

でいいみたいです。

参考

railsguides.jp




以上の内容はhttps://hyottokoaloha.hatenablog.com/entry/2015/08/23/185558より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14