«Перед сохранением» обратный вызов на ассоциации - PullRequest
3 голосов
/ 22 июня 2010

Как вы вызываете обратные вызовы before_save для ассоциации при сохранении родительского объекта? Например:

class Company < ActiveRecord::Base
  belongs_to :user

  before_save Proc.new { ... } # Not called.
end

class User < ActiveRecord::Base
  has_one :company

  before_save Proc.new { ... } # Gets called.
end

params = { 
  :user => { 
    :name => "Kevin Sylvestre", 
    :company_attributes => { :city => "Waterloo", :region => "Ontario" } 
  }
}

@user = User.new(params[:user])
@user.save

Делает звонки "before_save" для пользователя, но не для компании. Спасибо.

1 Ответ

2 голосов
/ 22 июня 2010

Вы можете использовать этот патч , который добавляет функциональность "touch" в ассоциацию has_one, или просто определить другой обратный вызов after_save в модели User и явно "коснуться" экземпляра Company.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...