lib/mongoid/versioning.rb in mongoid-2.3.5 vs lib/mongoid/versioning.rb in mongoid-2.4.0
- old
+ new
@@ -34,11 +34,13 @@
#
# @since 1.0.0
def revise
previous = previous_revision
if previous && versioned_attributes_changed?
- versions.build(previous.versioned_attributes).attributes.delete("_id")
+ versions.build(
+ previous.versioned_attributes, :without_protection => true
+ ).attributes.delete("_id")
if version_max.present? && versions.length > version_max
versions.delete(versions.first)
end
self.version = (version || 1 ) + 1
end
@@ -50,10 +52,12 @@
# @example Revise the document.
# person.revise!
#
# @since 2.2.1
def revise!
- new_version = versions.build((previous_revision || self).versioned_attributes)
+ new_version = versions.build(
+ (previous_revision || self).versioned_attributes, :without_protection => true
+ )
versions.shift if version_max.present? && versions.length > version_max
self.version = (version || 1 ) + 1
save
end