会社を作成し、その過程で従業員になるユーザーがいます。employees テーブルには:user_id
と があり:company_id
ます。
class User
has_many :employees
has_many :companies, :through => :employees
class Employee
belongs_to :user
belongs_to :company
attr_accessible :active
class Company
has_many :employees
has_many :users, :through => employees
かなり基本的です。リソース EMPLOYEE には、 boolean などの外部キー以外の属性があります:active
。を使用したいのですattr_accessible
が、これはいくつかの問題を引き起こします。属性:user_id
は正しく設定されていますが、:company_id
nil です。
@user.companies << Company.new(...)
Employee id:1 user_id:1 company_id:nil
だから私の質問は次のとおりです。:user_id
が正しく設定されている場合、そうではないにもかかわらず、同じように正しく設定されないのattr_accessible
はなぜですか? :company_id
であってはなりませんattr_accessible
。
Rails 3.0.8 を使用しており、3.0.7 でもテストしました。