У меня есть ПОЛЬЗОВАТЕЛЬ, который создает КОМПАНИЮ и становится СОТРУДНИКОМ в процессе. В таблице сотрудников есть :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 помимо внешних ключей есть и другие атрибуты, например, логическое значение :active
. Я хотел бы использовать attr_accessible
, но это вызывает некоторые проблемы. Атрибут :user_id
установлен правильно, но :company_id
равен нулю.
@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.