久々にRailsモードが続いています。 APIを眺めていたら便利そうな機能を見つけたので紹介します。

layouts/application.html.erbの中などで、

   1  <%= javascript_include_tag :defaults %>

のように書く事があると思いますが、この:defaults というシンボルを指定することで、あらかじめ登録されている expansionが展開されてincludeされます。 この:defaultsのようなものを自分で登録したい場合、

   1  ActionView::Helpers::AssetTagHelper.register_javascript_expansion :foo => ["bar", "baz"]

のようにconfig/initializers/*あたりで登録しておけばOKです。 呼び出す時は

   1  <%= javascript_include_tag :foo %>

でOK。プラグインを作るとき等に、複数のjsフィアルをまとめてincludeできるようにしておくと便利ですね。

スタイルシートの場合は、register_stylesheet_expansionという同様のメソッドを使います。

posted by Png genki on Thu 19 Mar 2009 at 11:04
Contents
expansionを使ってJSやCSSファイルをまとめて管理する
Comments
dsjf: https://gist.github.com/6bf1bf2c3cbb5eb6e7a7 これ... '13-1
瀧内元気: おお、チェックしてみます。thx! '11-12
overisland: Reeder for iPhone もこの UI を実装していますね。 '11-12
瀧内元気: その情報は見たのですが、以下のサイトによると、現在はまた必要になってるっぽいんですよね。 ... '11-12
tkawa: http://devcenter.heroku.com/articles/rails31_he... '11-12
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ