Asset PipelineとView Helper
Railsの初期状態はapp/views/layout/application.html.erbに
<%= stylesheet_link_tag "application", :media => "all" %> <%= javascript_include_tag "application" %>
って書いてある。
これを読み込んだ先の=require_tree .で
assets/stylesheets
assets/javascripts
の中身が全て展開されちゃう。
以下のようすれば
コントローラー毎に一意のファイルが読み込まれるようになる
<%= stylesheet_link_tag params[:controller] %> <%= javascript_include_tag params[:controller] %>
でも、これだけだとjQueryとjQuery-ujsがなくなっちゃうので
// require jquery // require jquery-ujs
をassets/javascripts/application.js
に書いておけば読み込んでもらえる。
ビューヘルパー側からの呼び出しは
<%= javascript_include_tag "application" %> <%= javascript_include_tag params[:controller] %>
の順序で読み込まないとUncaught ReferenceError: $ is not definedって怒られちゃう。
個別に
<%= javascript_include_tag "jquery" %> <%= javascript_include_tag "jquery_ujs" %>
とかやってもいいけど、まとめたほうが管理しやすいなーって
Ruby on Rails 3 アプリケーションプログラミング
- 作者: 山田祥寛
- 出版社/メーカー: 技術評論社
- 発売日: 2011/05/12
- メディア: 大型本
- 購入: 23人 クリック: 628回
- この商品を含むブログ (35件) を見る