ヘルパーの呼び出しルール(解決編)

全てのHelperがコールされている事が分かったので、共通のapp/controller/application.rbを調べてみた。

するとここにヘルパーの呼び出しが合った。Rails2.0系からこうなったみたいだ。

class ApplicationController < ActionController::Base
  helper :all
  protect_from_forgery
end

ためした3つのバージョンでコメントが異なるものの全て同じ記述だった(Rails2.1.2, Rails2.2.2, Rails2.3.2)。これのHelper部分の記述をコメント合うとする事で、期待通りの動きをするように変わった。

なるほど、ここで全てか特定のヘルパーだけを共通にするのか、といった事ができるようになるのか。すっきりした。