I have two models:
User (email: string)
Profile (name: string)
class User < ActiveRecord::Base has_one :profile delegate :name, :name=, :to => :profile end
class Profile < ActiveRecord::Base belongs_to :user end
rails c
u = User.new u.build_profile #=> init Profile u.name = 'foo' u.email = ' some@ema.il ' u.save #=> both User and Profile are saved u.name = 'bar' u.save #=> true, but changes in Profile were not saved! u.email = ' new@ema.il ' u.save #=> true, new User email was saved, Profile - still not! u.name #=> 'bar', but in database it 'foo'
Why is the profile not updated (saved only for the first time)? How to fix it?
Rustam A. gasanov
source share