"일반 오래된 루비"발표자 개체를 만들어 일부 사용자 지정 컨트롤러 도우미 메서드에 의존하는 코드를 정리하고 있습니다. 내 컨트롤러에서보기 컨텍스트를 클래스에 전달할 수 있습니다.컨트롤러 외부에서 레일스 컨트롤러보기 컨텍스트에 액세스하는 방법은 무엇입니까?
def show
# old code: view_context.bad_helper_method
@foobar = FoobarPresenter.new(Foobar.find(params[:id]), view_context)
end
class FoobarPresenter
def initialize(model, view_context)
@model = model
@view_context = view_context
end
def something
@view_context.bad_helper_method
end
end
그러나 테스트에 통과해야 할 항목이 확실하지 않습니다. 차라리 helper/view_context를 동적으로 가져 와서 전달할 필요가 없습니다.
컨트롤러 외부의보기/컨트롤러 도우미 컨텍스트에 어떻게 액세스합니까?
이것은 Rails 3.2 프로젝트입니다.
아마도 이것이 최선의 방법이라고 생각합니다. 감사! – Andrew