2011-12-15 1 views

답변

1

당신이 helper_method와 도우미로 컨트롤러 메소드를 선언 할 경우, 도우미는 컨트롤러에 속하는 뷰에 사용할 수 있습니다.

헬퍼를 모든 뷰에서 사용할 수있게하려면 컨트롤러 메소드를 정의하고 응용 프로그램 컨트롤러에서 도우미를 선언해야합니다. 당신이 관심이 있다면

,이 관련 레일 코드 :

def helper_method(*meths) 
    meths.flatten! 
    self._helper_methods += meths 

    meths.each do |meth| 
    _helpers.class_eval <<-ruby_eval, __FILE__, __LINE__ + 1 
     def #{meth}(*args, &blk) 
     controller.send(%(#{meth}), *args, &blk) 
     end 
    ruby_eval 
    end 
end 

당신이 전화했을 때, 도우미 그냥 컨트롤러에 같은 이름의 메소드를 호출하는 것을 볼 수 있습니다.

관련 문제