Has_one triggers save!?


#1

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


#2

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

“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