2011-02-07 10 views
0

、私はなぜrails 2.1はrescue_fromで例外をキャッチしませんか?私のApplicationControllerにで

rescue_from StorageExceptions::AuthorizationFailed, :with => handle_auth_error 

def handle_auth_error 
    redirect_to error_path(403) 
end 

を持っていますが、コードは、このエラーをキャッチされていません。私は、キャッチされているものが、NameErrorメッセージであることを確認しました。「キャッチコピーをスローする」StorageExceptions :: AuthorizationFailed '"

なぜ、これが実際のエラーをキャッチするのですか?

+0

何らかの理由で、エラーがスタックのどこかでNameErrorに変換されたようです。私はなぜそれがNameErrorとして提起されたのか分からないので、なぜか考えることができません。 – cmouse

+0

と、「perform_action_without_rescue」という名前のものは何ですか?私はどこにでもそれを見つけることができません – cmouse

答えて

0

私も、悩みの私のRailsでの作業rescue_from ..., :with => ...構文を取得(2.3.8)アプリを持っていた - 私は、代替rescue_from ... do ... endフォームを使用して、それを解決:

rescue_from(ActionController::InvalidAuthenticityToken) do |e| 
    #TODO: Flash something? 
    logger.error "! Invalid authenticity token when accessing #{request.url}" 
    render(:template => 'sessions/new', :layout => 'pre_login') 
end 

私は、なぜ最初のフォームを考え出したことはありませんでししかし、働いた...

これは助けて!

+0

は助けていないようです... – cmouse