2013-12-20 3 views
0
class ApplicationController < ActionController::Base 
    # Prevent CSRF attacks by raising an exception. 
    # For APIs, you may want to use :null_session instead. 
    protect_from_forgery with: :null_session 

    rescue_from ActiveRecord::RecordNotFound, :with => record_not_found #spazzing out 

    def record_not_found 
    flash[:error] = 'Could not find specified role' 
    redirect_to record_not_found_path 
    true 
    end 

end 

어떻게 잘못 되었나요? 나는 시도하고 사양을 실행하면 내가 얻을 : 정의되지 않은 메서드 - record_not_found

in `<class:ApplicationController>': undefined local variable or method `record_not_found' for ApplicationController:Class (NameError) 

내가 rescue_from:with => record_not_found 인수에 뭔가 됐지

답변

-1

첫 번째 매개 변수의 예제와 유지 =>은 문자열 또는 기호를이어야와

당신이 보호로 불리는 방법을 보호해야

둘째 당신은 정말 설명하지 않습니다 가능한 미스 사용

class ApplicationController < ActionController::Base 

    protect_from_forgery with: :null_session 
    # parameter for :with has to be a string or symbol 
    rescue_from ActiveRecord::RecordNotFound, :with => :record_not_found 

    # to prevent an external access 
    protected 

    def record_not_found 
    flash[:error] = 'Could not find specified role' 
    redirect_to record_not_found_path 
    true 
    end 
end 
+0

을 방지하기 위해 무슨 잘못 코드는 솔루션의 항변을 표시하면서 se가 작동하는 이유를 설명하기 위해 업데이트를 고려하십시오. – TheWebs

+0

@ TheWebs 희망은 이제 괜찮습니다. – devanand