【Rails】マニュフェストファイルについて
はじめに
Railsに出てくるマニュフェストファイルについて調べてみました。
マニュフェストファイルとは?
Railsにおけるマニフェストファイルとは、簡単に言うとCSSをひとまとめにしたapplication.cssファイルとJavaScriptをひとまとめにしたapplication.jsファイルのことです。
- app/assets/stylesheets/application.css
- app/assets/javascripts/application.js
普通HTMLでは、そのページで必要となるCSSやJavaScriptを読み込む際、headタグ内で読み込みますよね。Railsの場合は下記のように読み込みます。
views/layouts/application.html.erb
<!DOCTYPE html> <html> <head> <title>RunteqNormal</title> <%= csrf_meta_tags %> <%= csp_meta_tag %> <%= stylesheet_link_tag 'application', media: 'all' %> <%= javascript_include_tag 'application' %> </head>
CSSはこの部分ですね。
<%= stylesheet_link_tag 'application', media: 'all' %>
これは、app/assets/stylesheets/application.cssファイルを読み込んでくださいということです。 このファイルには、
*= require_self *= require_tree .
と記述してあり、下記のような意味を持っています。
ソース | 意味 |
---|---|
require_self | 同階層に存在している全てのファイルを読み込む |
require_tree | 自らのソースを読み込む |
他にも、下記のようにCSSを指定して取り込んだり、gemでの設定を取り込んだりすることができます。
@import "top"; @import "bootstrap"; @import "font-awesome-sprockets"; @import "font-awesome";
JavaScriptはこのようになっています。
<%= javascript_include_tag 'application' %>
//= require jquery //= require jquery_ujs //= require jquery turbolinks //= require jquery_tree .
このように、どのファイルを読み込むかのかとりまとめたファイルのことをマニュフェストファイルと呼びます。