2010-12-03 6 views
0

도움을 주셔서 감사합니다. 이 오류는 accepts_nested_attributes_for 구현 중에 발생합니다. 나는레일 3 정의되지 않은 메소드`events 'for nil : accepts_nested_attributes_for 사용할 때의 NilClass

ActionView::Template:Error (undefined method 'events' for nil:class) & NoMethodError in app/views/users/index.html.erb where line #12. 

이 요약 https://gist.github.com/726828

@User 모델 accepts_nested_attributes_forevent 클래스를 모든 파일을 참조하십시오 얻을. 요점 파일을보십시오. 다시 한 번 감사합니다

답변

3

제가보기에, 당신은 색인에 (나는 이것이 users/index이라고 가정합니다), 이것이 nil.events에 액세스하려고 시도 할 때 오류를 발생시키는 이유입니다.

색인에 @users이 있습니다. 당신이 수행 할 수 있습니다 것은

<%= render :partial => "user", :collection => @users %> 

각 사용자에 대한 users/index의 부분을 렌더링하고 당신이 보여주고 싶은 것을 넣어 users/_user.html.erb를 만드는 것입니다.

user로 부분이있을 것이다 접근의 방법으로

하지 @user

당신에게 좋은 소리?

+0

감사합니다. @ecoologic, 나는 당신의 제안을 시도하고 구현할 것입니다. – brg

+0

다시 Thaks @ecoologic. 귀하가 제안한 변경 사항을 작성했으며 https://gist.github.com/726898에서 새 파일을 볼 수 있습니다. 그러나 같은 오류가 발생할 때까지입니다. 사용자/색인에있는 이벤트 테이블의 데이터를 표시하려는 것과 관련이 있다고 생각하십니까? accepts_nested_attributes_for를 사용하면 그것을 허용한다고 생각했기 때문에. 당신의 도움을 주셔서 감사합니다. – brg

+0

당신은 @ user **에 @없이 액세스해야합니다. 디버거 라인 <% debugger %>을 넣고 가지고있는 것을 보거나 가지고 있지 않은 것을보십시오. – ecoologic

관련 문제