私はあなたの質問を完全に理解していませんが、私はそれを撃つでしょう。
従業モデル:
has_many :employments, :dependent => :destroy
has_many :companies; :through=>employments
has_many :employment_types, :through=>employments
会社モデル:
has_many :employments
has_many :employees; :through=>employments
has_many :employment_types, :through=>employments
雇用型モデル:
has_many :employments
has_many :companies; :through=>employments
has_many :employees; :through=>employments
雇用モデル:
belongs_to :employee
belongs_to :company
belongs_to :employment_type
ビューコード:
<%= form_for @employee do |f| %>
<%= f.text_field :name %>
<% 2.times do %>
<%= f.fields_for :employments, @employee.employments.build do |employment_fields| %>
<%= f.select :company_id, options_from_collection_for_select(Company.all, 'id', 'name') %>
<%= f.select :employment_type_id, options_from_collection_for_select(EmploymentType.all, 'id', 'name') %>
<% end %>
<% end %>
<% end %>
ダイアグラムでは、あなたは、通常、レールだけでIDとなるこれらを好む非標準(MODEL_ID)としてIDフィールドを持っています。しかし、あなたは以上の各モデルにこれを追加することで、デフォルトの主キーに乗ることができます - 私はフォームを送信するときが、あなたの助けのための
set_primary_key <symbol representing primary key>
おかげで、それは主に働いているとあなたが説明してきたように、私はセットアップ私の関係をしました従業員IDと企業IDの両方があり、もう1つに従業員IDと雇用タイプIDがあります。これらの3つを同じ新しい記録にまとめる方法はありますか? – Kobius
あなたはcreateメソッドとリクエストからのparamsハッシュのコピーにコードを投稿できますか? –
私はデフォルトの作成方法を変更していません: – Kobius