레일 3.2를 사용하고 있으며 대량 할당을 방지하려고합니다. 나는 부모 - 자식 관계가 있습니다.레일 부모 자식 폼 예 질량 지정 방지 예
class Parent < ActiveRecord:Base
has_many :children
attr_accessible :name
end
class Child < ActiveRecord:Base
belongs_to :parent
attr_accessible :title
end
내 routes.rb 하위 리소스에 상위 리소스 내에 중첩되어 있지 않습니다. 이제 new_child_path(@parent.id)
으로 새 자녀를 만드는 링크가 있습니다. 이 localhost:3000/child/new?parent_id=1
에 저를 지시하고 나는 new
행동에 결국 :
def new
@child = Child.new
@parent = Parent.find(params[:parent_id])
@child.parent = @parent
end
내 질문은 : 어떻게 아이 엔티티 내 _form.html.erb
를 작성? 나는 parent_id
에 대해 f.hidden_field
을 사용할 수 없습니다. 왜냐하면 저의 행동을 만들 때 대량 할당으로 인해 해체 될 것이기 때문입니다. 반면에 나는 아이를 구할 때 parent_id
을 부모님과 알기 위해 전달해야합니다. 나는 이것을위한 훌륭한 실례를 발견하지 못했다.
나는 http://guides.rubyonrails.org/routing.html#nested-resources 읽었다 그러나 나는 규칙을 따랐습니다 : 자원은 안 깊이가 1 단계 이상 중첩되어 있으므로 중첩 된 리소스가 삭제되었습니다. –
@ TomaszKalkosiński 업데이트 된 답변. – zsquare
이것은 책을 만드는 동안 내 URL에 parent_id가있는 문제를 해결합니다. 이 라우트 연습은 널리 퍼지지 않습니다. 고맙습니다. –