2010-12-27 4 views
1

레일 2.1.1을 레일 2.3.8로 업그레이드 중입니다. 이전에는 application_controller에 정의 된 rescue_action_in_public 메서드에서 Mysql :: Error를 catch 할 수있었습니다. 버전 2.3.8로 업그레이드하면 'rescue_action_in_public'이 전혀 호출되지 않습니다. 내 응용 프로그램 컨트롤러에서 Mysql :: Error 예외를 잡으려면 어떻게해야합니까?레일에서 응용 프로그램 컨트롤러에서 Mysql :: Error 예외를 잡는 방법 2.3.8

도움을 주시면 감사하겠습니다.

감사

답변

1

당신은 rescue_from ActiveRecord::RecordNotFound, :with => :deny_access을 사용하고 rescue_action_in_public 더, 내가 모르는 않았다 여부하는 방법 def deny_access; flash[:error] = "not this time"; redirect_to root_url; end

만들 수 있습니다.

+0

컨트롤은 application_controller에 전혀 오지 않습니다. 함수 failsafe_response로 이동하여 FAILSAFE 예외를 throw합니다. – anusuya

관련 문제