lib/mongoid/embedded_copy.rb in mongoid-embedded_copy-1.0.1 vs lib/mongoid/embedded_copy.rb in mongoid-embedded_copy-1.0.2
- old
+ new
@@ -62,9 +62,19 @@
skipped_attributes.each {|n| attrs.delete(n) }
end
super(attrs)
end
+ def update_from_original
+ update_from(load_original)
+ end
+
+ def update_from(document)
+ attrs = document.attributes.to_h.dup
+ skipped_attributes.each {|n| attrs.delete(n) }
+ update_attributes(attrs)
+ end
+
embedded_in embed_name, embed_opts
klass.fields.each do |name, f|
next if skipped.include?(name) || name == '_id' || f.metadata
options = f.options.dup