content_forで特定のページのみ使う処理をする
特定のページでjsだけ読ませたいというのは、よくあることだと思います。
そんな時のためのcontent_for
というものがあります。
content_for - リファレンス - - Railsドキュメント
使い方
読み込みをさせる場所にyield
を使います。
app/views/layouts/application.html.slim
... ... = render 'footer' = yield :js
jsを下の方で読むという方法ですね。
上からページは読まれていくので、jsは下の方に書く方が読み込みが早くなります。
そして、特定のjsを読み込ませるページです。
app/views/users/index.html.slim
- content_for :js do javascript: alert(hoge);
例えば、hoge
ってalertをしたい場合ですね(ないと思いますが・・・)
これでusers/index
アクションのみ上のjsが読み込まれます。
もちろん、= render 'hoge'
という風にpartialを読み込ませることもできます。
js
は割と使い道が多いのではないでしょうか?
以上です。