2011-06-07 16 views
3

BusinessUnitモデルを管理するためにformtasticを使用するフォームを記述しますが、新しいBusinessUnitを作成するときには、他の多くのレコードタイプも作成する必要があります。モデル間の関連は以下の通りです:複数のモデルを1つのフォームで更新するレール

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を使用して作成する必要があります。さらに、新しいサイトレコードへの外部キーを保持しなければならないLocationレコードが作成されなければならず、これはImに問題がある場所です。

ネストされたフォーム(下記)を使用して新しい場所を作成できますが、サイトは手動で作成する必要があります。

<%= 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 %> 

場所、サイトレコードを作成し、場所に新しく作成されたサイトの外部キーが保持されていることを確認するにはどうすればよいですか?

答えて

関連する問題