Не могу победить этот Railscasts.com учебник, предоставленный Райаном Бейтсом.
Эпизод 196: Форма вложенной модели, pt. 1
Вот пример, который работает только с одним уровнем вложенности
Модель
модель / company.rb
class Company < ActiveRecord::Base
has_many :people, :dependent => :destroy
accepts_nested_attributes_for :people, :allow_destroy => true
end
Модели / person.rb
class person < ActiveRecord::Base
belongs_to :company
end
Контроллеры
companies_controller.rb
def new
@company = Company.new
3.times { person = @company.people.build }
end
Просмотры
вид / компании / _form.html.erb
<% form_for @company do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
<%= f.fields_for :people do |builder| %>
<%= render "people_fields", :f => builder %>
<% end %>
<p><%= f.submit "Submit" %></p>
<% end %>
вид / компании / _people_fields.html.erb
<p>
<%= f.label :name, "Person" %>
<%= f.text_field :name %>
<%= f.check_box :_destroy %>
<%= f.label :_destroy, "Remove" %>
</p>