2013-06-15 2 views
0

이 질문은 미해결 문제 here과 관련이 있습니다.Rails 디버거를 사용하여 인스턴스 변수의 소스 식별

레일즈 디버거 또는 비슷한 것을 사용하여 인스턴스 변수 (또는 다른 변수)의 소스를 식별하고 추적 할 수 있습니까? 나는이 @venue

Venueshow 행동에서 내 Venueshow보기로 전달되는,하지만 난 불량이 있거나 내 응용 프로그램에서 다른 곳 @venue의 버전을 복제하는 것. 내가 Venue 컨트롤러 show 액션에서 @venue = Venue.find(params[:id])을 주석 처리하면 오류가 발생하지만 show 뷰는 여전히 작동합니다. 이 복제본을 추적해야합니다.

+0

나는 그렇게 생각하지 않는다. grep 사용을 고려 했습니까? 보기, 부분 또는 도우미에서 실수로 재 할당하지 않았습니까? 필터가 있습니까? –

+0

아니, 어떻게 할 수 있습니까? – Raoot

+2

... 모든'.rb' 파일에서 "@venue"에 대한 Grep입니다. 아마 파일을 볼 수도 있습니다. 대신'ack '을 사용해보십시오. –

답변

0

Better Errors을 살펴보십시오. 모든 세부 사항이 포함 된 railscast이 있습니다. 그냥 당신이 스택의 모든 지점에서 지역 및 인스턴스 변수를 볼 수 있습니다 스택 추적의 라인을 위해 추가 기능

에 대한 binding_of_caller 보석이 필요

group :development do 
    gem 'better_errors' 
    gem 'binding_of_caller' 
end 

설치합니다. 또한 스택 추적의 어느 지점에서나 사용할 수있는 대화 형 프롬프트가 있습니다. 몇 달 동안 사용 해왔고 정말 도움이되었습니다.

@venue과 그 중복 내용을 쉽게 추적 할 수 있습니다.

관련 문제