本来、HTML,CSSでサイトを作成する際は、HTMLファイルからlinkタグを使ってCSSファイルを読み込む設定が必要です。
しかし、Railsの場合、それらを記述する必要はありません。
じゃぁどうやって必要なCSSやJavaScriptが読み込まれるのか??
アセットパイプライン
Sprockets
マニフェストファイル
のこれらの単語を使ってざっくり理解する。
#アセットパイプライン
要は、まとめてくれる(統合してくれる)って仕組み。
詳しく働きをみると以下のようになる。
1.コンパイル
2.統合
3.圧縮
4.ダイジェスト付与
5.完成したファイルがpublic/assets/
に保存される
#Sprockets
アセットパイプラインの動作を担っているのがSprockets。
gemとしてデフォルトで入っている。
アセットパイプラインはデフォルトで有効なので、無効にしたい場合は--skip-sprockets
をつけて以下のコマンドを実行。
$ rails new appname --skip-sprockets
#マニフェストファイル
app/assets/javascripts/application.js
app/assets/stylesheets/application.css
がそれぞれcssとJavaScriptのマニフェストファイル。
ここに記述されてあるrequire_tree.
によって指定されるディレクトリのファイルが全て読み込まれる
#オススメ記事
Ruby on Rails のアセットパイプラインの挙動を環境ごとに学ぶ
Railsガイド アセットパイプライン
railsのアセットパイプラインについて解説する