에게 간단한 배경`accepts_nested_attributes_for`,하지만 첫 번째 자식
내가/연습 레일을 배울 수있는 기존의 포럼을 만들고있어 수정합니다. 사용자가 새 항목을 만들 때,
User Model
has_many :topics
has_many :posts
Topic Model
has_many :posts
belongs_to :user
Post Model
belongs_to :user
belongs_to :topic
그러나, 나는 또한 그들이 동시에 (포럼이 작동처럼) 그 주제 내 첫 번째 게시물을 만들려고합니다. 또한 주제 작성자가 주제를 편집 할 때 첫 번째 글을 편집합니다.
따라서 토픽 모델에 accepts_nested_attributes_for :posts
을 추가했습니다.
# topics/_form
<%= form_for [@topic] do |topic| %>
<%= topic.text_field :name %>
<% topic.fields_for :posts do |post| %>
<%= post.text_area :content %>
<% end %>
<% end %>
[질문
이 코드는 작동합니다
# TopicController
def new
@topic = current_user.topics.new
@topic.posts.build
end
그리고 여기가 중첩 된 형태입니다. 사용자는 주제 작성과 함께 첫 번째 게시물을 작성합니다.
그러나 다른 사용자가 주제에 대한 게시물을 만들고 @topic.posts
이 펼쳐지면서 주제 작성자가 주제를 편집하면 주제의 모든 게시물에 대한 텍스트 영역이 주제 작성자에 의해 편집 가능으로 나타납니다.
주제 작성자가 views/topics/_form
양식의 주제의 첫 번째 소식 만보고 편집 할 수 있도록하려면 어떻게해야합니까 ??