2011-09-02 6 views
5

저는 Rails 3.1을 사용 중이며 토론 포럼 작업을하고 있습니다. 나는 이라는 모델을 가지고 있는데 각각은 Post을 가지고있다. 사용자가 새로운 주제를 만들면 첫 번째로도 Post을 만들어야합니다. 그러나, 나는 어떻게 이것을 동일한 형태로 할 수 있을지 확신하지 못한다. 여기 내 코드는 다음과 같습니다.Rails 3.1에서 같은 형식의 여러 모델이 있습니까?

... 그러나 이것이 작동하지 않는 것 같습니다. 어떤 아이디어?

감사합니다.

답변

6

@ 파블로의 대답은 필요한 모든 것을 가진 것처럼 보입니다. 그러나 그런 다음 Topic 컨트롤러에이

def new 
    @topic = Topic.new 
    @topic.posts.build 
end 

을 추가 ...

첫 번째 변경이

<%= f.fields_for :posts do |ff| %> # :posts instead of :post 

<%= f.fields_for :post do |ff| %> 

에서보기에이 줄을 구체적으로 그게 너를 가야 해.

+0

+1 실제 예입니다. – Joseph

3

특정 사례를 들어 라이언 베이츠 herehere

에서 매우 좋은 설명 : (: 포스트), 대신 협회 (: 게시물) 당신이 fields_for 전화 당신이 모델을 사용하고 있습니다.

또한 <%= ... %>의 올바른 사용 여부를 확인하십시오. 레일 3.x에서는 건축물의 대담이 바뀌었다. 블록 도우미 (form_for, fields_for 등)가 필요하지 않으며 인라인 도우미 (text_field, text_area 등)가 필요로합니다.

+0

링크를 제공해 주셔서 감사합니다.하지만 제 질문에 대한 구체적인 내용을 찾고있었습니다. – jasonbogd

관련 문제