HerokuでRailsアプリをデプロイしようとしていたのですが、gemのbower-rails
使ってJSライブラリを管理していました。いざHerokuにpushしようとしたら、bower周りがうまくいかずいろいろ調べながらやってたのですがrake aborted
してしまいうまく行かずそこで辿り着いたのが Rails Assets
を使ってbowerパッケージを扱う方法です。
こちらのブログを参考にしました。
Rails Assetsについて
どうやらbowerパッケージをgemにコンバートしてホスティングしてるサービスなようです。
これを使えばbowerもnodeも不要なのでらくちんです。
実際に使ってみる
Gemfile
に下記を追記します。
source 'https://rails-assets.org'
bowerで提供されているパッケージ名を下記のような形でGemfileに追記します。
gem 'rails-assets-BOWER_PACKAGE_NAME'
例えばjquery
とunderscore
とbootstrap
を足したい場合はさらに下記を追加します。
gem 'rails-assets-jquery'
gem 'rails-assets-underscore'
gem 'rails-assets-bootstrap'
そしたらapplication.js
に下記を追記します。
//= require jquery
//= require underscore
//= require bootstrap
bootstrap
はCSSにも必要なのでapplication.css
にbootstrap
を追記します。
*= require bootstrap
あとはbundle install
すればgemとしてインストールされます。
% bundle install
これでnode
とbower
がなくてもHerokuでassets:precompile
を通すことができました!
便利だわー。