2012年12月18日火曜日

Asset Pipeline(Precompilling Assets)

特定のcssをデプロイ時にコンパイルしたい時のメモ

layoutが分かれていて以下の様になっている。
<%= stylesheet_link_tag    "top", :media => "all" %>

application.cssが以下の様に指定してある
*= require_tree ./application

このような場合トップのtop.cssをコンパイルしたいが、コンパイルされない
毎回デプロイしていては面倒なのでローカルで実験をする
  1. database.ymlにproduction環境を作成する
  2. dbを作成する(rake db:setup)
  3. コンパイルする(rake assets:precompile)
  4. public/assetsにtop.cssがない
  5. config/environments/production.rbを変更する
# config.assets.precompile += %w( search.js)
以上を以下の様に変更する
config.assets.precompile += %w( *.css *.js )

以上の内容はrailsガイドのAsset Pipelineに詳しく書いてあります。