3

Я пишу форму, которая использует formtastic для управления моделью BusinessUnit, однако при создании нового BusinessUnit ему также необходимо создать ряд других типов записей. В ассоциации между моделями, как показано ниже:Рельсы, обновляющие несколько моделей в одной форме

class BusinessUnit < ActiveRecord::Base 
    has_many :business_unit_sites 
    has_many :locations 

class BusinessUnitSite < ActiveRecord::Base 
    belongs_to :site 
    belongs_to :business_unit 

class Site < ActiveRecord::Base 
    has_many :locations 
    has_many :business_unit_sites 

class Location < ActiveRecord::Base 
    belongs_to :business_unit 
    belongs_to :site 

Когда BusinessUnit создан, сайт также должен быть создан с использованием BusinessUnitSite как присоединиться к столу. Кроме того, должна быть создана запись местоположения, которая должна содержать внешний ключ для новой записи сайта, и здесь у меня возникают проблемы.

Я могу создать новое местоположение, используя вложенную форму (см. Ниже), но сайт должен быть создан вручную.

<%= semantic_form_for @business_unit do |f| %> 
    <%= f.inputs do %> 
    <%= f.input :name %> 
    <%= f.input :business_unit_id %> 
    <%= f.input :business_unit_group, :include_blank => false %> 
    <%= f.input :business_unit_type %> 
    <%= f.input :tax_region, :include_blank => false %> 
    <%= f.semantic_fields_for :locations do |l| %> 
     <%= l.input :name, :label => "Location Name" %> 
    <% end %> 
    <% end %> 
    <%= f.buttons %> 
<% end %> 

Что является лучшим способом для создания местоположения, записей сайта и убедитесь, что Местонахождение имеет внешний ключ вновь созданный сайт?

ответ