Forum: Ruby on Rails has_one triggers save!!?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
kojilab (Guest)
on 2009-04-11 04:07
(Received via mailing list)
Hi,

I have a weird behavior where an object association triggers a save
when the parent record is not new.

My association is polymorphic like this

class UserGuideline < ActiveRecord::Base
  has_one  :recurring_task, :class_name => 'UserRecurringTask', :as
=> :taskable, :dependent => :destroy
end

class UserRecurringTask < ActiveRecord::Base
  belongs_to  :taskable, :polymorphic => true
end

If do
g=UserGuideline.find(id)
g.recurring_task = UserRecurringTask.new

it triggers the save and the validation

Anyone had this issue?

Thanks
Frederick C. (Guest)
on 2009-04-11 19:07
(Received via mailing list)
On 11 Apr 2009, at 01:06, kojilab wrote:

>
> Hi,
>
> I have a weird behavior where an object association triggers a save
> when the parent record is not new.
>
According to  "Unsaved objects and association" at
http://api.rubyonrails.org/classes/ActiveRecord/As...

"Assigning an object to a has_one association automatically saves that
object and the object being replaced (if there is one),
  in order to update their primary keys - except if the parent object
is unsaved (new_record? == true)."

Fred
This topic is locked and can not be replied to.