2013-10-24 1 views
1

양식에서 빌드 방법을 사용하는 것이 좋습니다. 연결에서 빌드를 사용하는 중첩 된 양식

<%= form_for([@post, @post.comments.build]) do |f| %> 

내가 내 응용 프로그램에서이 방법을 사용, 그것은 잘 작동하지만, 그것은 또한보기에서 양식을 만들 수있는 콘텐츠의 빈 결과를 표시. 이것은 아마도 폼에 있고 db에 저장된 레코드를 같은 뷰에 표시하기 때문일 것입니다. 어떻게 이것을 피할 수 있습니까?

은 당신의 접근 방식의 문제가 당신에게

답변

2

감사하는 형태로 어떤 값 또는 오류 메시지가 없을 것입니다 수 있도록 양식을 다시 값이 다시 초기화됩니다 표시 될 때, 유효성 검사 오류가있는 양식을 제출 한 후. 당신이 기본 발판 컨트롤러가있는 경우

new 행동

@comment = @post.comments.build 

에 넣고 그리고

form_for([@post, @comment]) do |f| 

에이 방법을 form_for 전화를 변경, 형태는 항상 제출로 채워집니다 Comment.

+0

''post-show page'에서'comments'를 만들기위한'form'을 가지고 있기 때문에 나는''새로운 액션 '을 가지고 있지 않습니다. 그리고 나는 하나를 만들고 싶지 않습니다. 다른 해결책이 있습니까? 그 솔루션이 있었지만 그 시간에 리소스가 중첩되지 않았습니다. – John

+0

그러면 게시/표시 작업에'@comment = @ post.comments.build' 행을 넣으십시오. – zwippie