Railsアプリにデザインを適用する方法 Asset Pipeline

少し前にハマってしまった事、忘れないうちに書いておく。

前回の記事

hogehoge/app/assets/以下にimage, javascript, stylesheetがあって hogehoge/app/views/layouts/application.html.erbにassets内のjsやstyleが圧縮された状態でリンクされてる

と書いた内容について、p4dで作成したアプリでcssを変更してデザインを変えてみる、というのを試してみた。 しかし、cssを書き換えるだけでは変更が適用できず…。

Asset Pipeline(hogehoge/app/assets/)内のapplication.cssをcompileしないと反映されないらしい。 下記の方法で反映できた。

  • Asset Pipeline内のcss/scssを適当に変更する。
  • hogehoge/app/assets/application.cssをapplication.css.erbにリネームする。
  • ターミナルで
bundle exec rake assets:precompile

でcompile完了。

追記: 一度コンパイルするとpublic/assetsにコンパイルしたファイルが作成され、Railsがそのファイルを自動的に読み込むらしい。 (@shu_0155さんが教えてくださいました。多謝!) public/assets削除したらapp/assetsをコンパイルしなくてもcssの変更が反映できた!

comments powered by Disqus