When using "attributes=" for an object with a accepts_nested_attributes_for
a model
that has a has_many relationship will cause the has_many array to be
appended-to
instead of being replaced as would be expected by a straight assignment
operation.
See this example:
class Member < ActiveRecord::Base
has_many :posts
accepts_nested_attributes_for :posts
end
class Post < ActiveRecord::Base
belongs_to :member
end
m=Member.new
p={:name => 'joe', :posts_attributes => [{:title=>'t1'},{:title=>'t2'}]}
m.attributes = p
m.posts.size ----> 2
m.attributes = p
m.posts.size ----> 4
Is this a feature or a bug? If it is a feature, how is it supposed to be
used?
--
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msg/rubyonrails-talk/-/Oz8JeQi5ja0J.
For more options, visit https://groups.google.com/groups/opt_out.