AR Callbacks and associations

Hello,

I have this model in Rails 2.0:
class Contact < ActiveRecord::Base
before_save :update_contact_user

belongs_to :user

belongs_to :contact_user, :class_name=>‘User’,
:foreign_key=>‘contact_user_id’

validates_presence_of :user, :fullname, :email
validates_as_email :email
validate_phone :home_tel, :mobile_tel, :office_tel

private
def update_contact_user
#check if some user matches the email entered
cuser = User.find :first, :conditions=>[“email = ?”, email]
contact_user = cuser if cuser
end

end

The callback is called correctly and finds a user, but for some reason
the association is not updated. If I do the same code in the calling
method (just before I call ‘save’) then it is working. Any guess? Am I
missing something?

Thank you,
Julien.

Julien :

validate_phone :home_tel, :mobile_tel, :office_tel
The callback is called correctly and finds a user, but for some reason
the association is not updated. If I do the same code in the calling
method (just before I call ‘save’) then it is working. Any guess? Am I
missing something?

in update_contact_user method, contact_user is a local variable.

Try : self.contact_user = cuser if cuser

– Jean-François.

Duh.

Guess you should not code after Christmas :slight_smile:

Thanks,
Julien.

On Dec 26, 8:40 pm, “Jean-François Trân” [email protected]