0

更新:申し訳ありません。この問題を解決しようと何時間も試みた結果、頭がおかしくなってしまいました。もちろん、「HABTM Checkboxes」railscast は、この投稿に対する正解でした。ダニーが言ったように。ありがとうございました。


Ruby と Rails に取り組んでいるのですが、解決できない問題があります。

データベースにはemployees、 、departments、および join-tableという 3 つのテーブルがありますdepartments_employees

私はhas_and_belongs_to_many関係を使用します:

#models/employee.rb
class Employee < ActiveRecord::Base
   has_and_belongs_to_many :departments
   accepts_nested_attributes_for :departments, :allow_destroy => true
   attr_accessible :last_name, :first_name, :middle_name, :departments_attributes
end

# models/department.rb
class Department < ActiveRecord::Base
  has_and_belongs_to_many :employees
  attr_accessible :title
end

私の問題は、新しい従業員を作成し、それを既存の部門にリンクし、同時に新しい部門を作成しない方法がわからないことです。

例:

Employee.create(:last_name => "Smith",
                :departments_attributes => [{:title => "IT"}])

しかし、これは従業員と部門の両方を作成します。

それを行うための魔法はここにありますか?

4

1 に答える 1