Tôi có hai mô hình:
User
(email: string)
Profile
(tên: string)
Rails cập nhật đại biểu gọi
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 = '[email protected]'
u.save #=> both User and Profile are saved
u.name = 'bar'
u.save #=> true, but changes in Profile were not saved!
u.email = '[email protected]'
u.save #=> true, new User email was saved, Profile - still not!
u.name #=> 'bar', but in database it's 'foo'
Tại sao các hồ sơ không được cập nhật (chỉ được lưu lần đầu tiên)? Làm thế nào để sửa lỗi này?