RailsAssetsでRailsアプリのAsset管理を行う
なぜRailsAssetsが必要か
Railsアプリに外部ライブラリを組み込む時って結構
直接DLしてapp/assets
とかvendor/assets
とかに突っ込みがち。
でもそれだとRails全体はGitのバージョン管理になってるかもしれないけど、
ライブラリのバージョン管理はできてないよね。
vendor/
以下はそもそもignoreしてそうだし。
bowerというアプローチはあるけど、2重管理になるよね・・・。
Gemとして配布されてるライブラリもあるけど、本家への追随が遅れているケースが多い。
そこで各ライブラリが提供しているbower.json
(依存ファイルを記述しておくファイル)を解析して
自動的にGem化してくれるhttps://rails-assets.org/
を利用する。
これならbundlerで管理が一元化できて、bowerのメリットも享受できる。
使い方
Gemfile
以下を追記する
source 'https://rubygems.org' +source 'https://rails-assets.org' gem 'rails' # Assets gem 'sass-rails' gem 'uglifier' gem 'coffee-rails' +gem 'rails-assets-bootstrap' +gem 'rails-assets-ember'
application.jsとかappliction.cssからrequire
//= require bootstrap //= require ember
*= require bootstrap
だん!簡単!
使えるGemはどこでわかるの?
見つからないんだけど?
それでも駄目なケースはたまにあるらしい。 bower.jsonちゃんと更新してくれてないとあかん奴。 でもだいたい使いたいライブラリってメンテが活発なやつ使うから問題になることはほとんどないはず。