2009-06-05 2 views
1

나는 mac osx leopard의 레일즈 2.3에서 작업 중입니다. 때마다 내가이 개발 찾을이지만, 내가 반드시 사용자가 죄송합니다 '우호적를 볼 수있는 방법을 궁금 오류rails : 레일에서 라우팅 오류에 대한 사용자에게 친숙한 메시지 표시

Routing Error 

No route matches "/whatever_i_typed" with {:method=>:get} 

다음 내가 얻을 레일 응용 프로그램에서 존재하지 않는 URL을 입력합니다! 찾을 수 없음 '페이지가 표시됩니다. 구조 블록을 시작하는 것에 대해 생각하고 있었지만 오류 블록 (예 : ActiveRecord :: RecordNotFound)을 알지 못했습니다.

감사합니다! Yuval 교수

답변

2

이 오류는 프로덕션에서는 표시되지 않습니다. 대신 사용자에게 public/404.html 페이지가 표시됩니다.

로컬 호스트에서이 방법을 사용하려면 passenger/mongrel을 프로덕션 모드로 설정하십시오. 지금처럼 ApplicationControllerlocal_request? 메서드를 재정의 :

class ApplicationController 
    def local_request? 
    false 
    end 
end 

당신이 ActionController에 rescue_from 클래스 방법을 확인하실 수 있습니다 동적 거동을 실험하려는 경우.

+0

답변 해 주셔서 감사합니다. 도움이됩니다. –

0

어떻게 마지막 routes.rb 항목으로

map.connect '*url', :controller => "not_found" 

어떻습니까? 나는 그것이 트릭을해야한다고 생각한다, 그렇지 않아?

+0

'구조'당신이 액티브 오류가 있다면 당신은 것 같은 오류 방법이 없다? –

+0

오류가 없습니다! 그것은 단지 라우팅 일뿐입니다. – alamar

관련 문제