こんにちは, Rails 初心者です。 本を読みながら, いろいろやっていますが
CSS, 画像, JavaScript ではまったので, メモっておきます。
環境 Windows 7
Ruby 1.9.3
Rails 3.2.11
さて, Rails で CSS, 画像, JavaScript を利用する場合 静的リソース置き場である public
フォルダにそれぞれ
CSS public/stylesheets
画像 public/images
JavaScript public/javascript
に入れておけ, とあるわけですが, やってみたら動かない。どうやらデフォルトで圧縮などを行う
アセットパイプラインがon になっている模様, ついでに, jQuery も動かない。
・アセットパイプランをOFF
config/environments/development.rb に
config.assets.enabled = false
にして, 無効にしておこう, これで上記の
development.rb に記述しておけば, 本番環境は関係ないので, 本番は, onでいこう
・jQuery が使えるように, application.js を取り込む
app/views/layout/application.html.erb 全体のテンプレートに,
<%= javascript_include_tag "application" %> なるものがいるわけだけど,
何もしないで, 開発を進めていたら, どうも存在せず読み込めないらしい。
rails 3.2 では, どうやら jQuery がこいつの中に デフォルトで入っているらしいが
-> そもそも public/javascripts に application.js など存在しない
そこで, 上でごちゃごちゃやっていた時に一時的に, assetをプリコンパイルしていた時に
出てきたやつをちゃっかりコピーしたら, 動作した。
以下その手順
rake assets:precomple
でアセットをプリコンパイルする. public/assets 以下に application.js が出てきた。
このapplication.js を public/javascripts/ にコピー。
すでに圧縮されたapplication.js が使えるようになります。 jQuery もこれでばっちり。
0 件のコメント:
コメントを投稿