2012-06-06 3 views
1

표준 레일스 양식을 작성한 다음 JQ ajaxForm에 래핑했습니다. 이제는 성공 콜백이 호출되는데, 제출하는 동안 Rails 예외가 발생했는지 여부입니다.레일즈 및 ajaxForm - 예외 감지 방법

ajaxForm에서 Rails 예외를 감지하는 방법은 무엇입니까? 오류가 발생하여 양식에 남아 예외 텍스트를 표시하려고합니다.

추가 참조 발견

답변

1

요청을 확인 오류가 있는지 확인하기 위해 상태를 반환하거나

if(jqXHR === 0){ 
    //do something with error 
} else { 
    //success 
} 

편집처럼 할 :(10) 전체 응용 프로그램

class ApplicationController 
    around_filter :xhr_exceptions 
    # ... 
    private 
    def xhr_exceptions 
    yield 
    rescue 
     render('shared/exception', :layout => 'overlay', :status => 500) if request.xhr? 
    end 
end 

http://codequietly.com/blog/2010/08/rails-ajax-and-exceptions-bring-it-on 경우를 들어

$.ajaxSetup({ 
    error: function(res){ 
    $('body').prepend(res.responseText) 
    } 
}); 

하나의 방법

def new 
    @item = Item.new 
    rescue 
    render 'shared/exception', :layout => 'overlay' 
end 

은 "오류가 발생하면 실행 코드의 블록"이

시도는 캐시 된 죽은 시도

+0

어떤 식 으로든 예외 메시지를 여전히 catch 할 수 없습니다. – Paul

관련 문제