2012-07-19 2 views
0

나는 게시물 (페이지 # 집)과 함께 목록을 가지고 있으며, 나는 의견이있는 목록을 열어 (게시물 # 쇼), 변수 @feed_items를 선언한다. 덧글의 끝에 나는 새로운 코멘트 (comments # create)를위한 simple_form을 가지고있다. 문제 : 제출 버튼에 오류가 발생하면 오류가있는 주석과 양식이있는 기존 목록을 렌더링해야합니다. 나는이 의견에 노력하고있어 # 생성 : 방법 게시물 # 쇼가 호출되지 않았기 때문에 rendering simple_form 오류

if @comment.save 
    ... 
else 
    render 'posts/show' 
end 

하지만이 경우 변수 @feed_items에

이 선언되지 않았습니다. redirect_to를 쓰려고 할 때 주석이있는 목록이 있지만 오류 메시지는 표시되지 않습니다. 이 작업을 수행하는 방법?

답변

1

사람들이 흔히 저지르는 실수입니다. render 메서드는 표시 할보기 만 선택하고 redirect_to 메서드는 리디렉션 작업을 다시 실행합니다.
오류가있는 경우 render 메서드를 호출하여 표시 할보기를 선택하고이보기에서 해결해야하는 모든 인스턴스 변수를 수동으로 할당해야합니다. 레일에서
확인 Section 2.3.2는 안내 :

if @comment.save 
    ... 
else 
    # Populate the @feed_items in here again 
    render 'posts/show' 
end 
: 귀하의 경우 http://guides.rubyonrails.org/layouts_and_rendering.html

는이 같은 것