Log errors when versions can't be created
This commit is contained in:
parent
71b93758bf
commit
0f90b90928
|
@ -397,8 +397,12 @@ module PaperTrail
|
||||||
end
|
end
|
||||||
add_transaction_id_to(data)
|
add_transaction_id_to(data)
|
||||||
version = send(self.class.versions_association_name).create merge_metadata(data)
|
version = send(self.class.versions_association_name).create merge_metadata(data)
|
||||||
update_transaction_id(version)
|
if version.errors.any?
|
||||||
save_associations(version)
|
log_version_errors(version, :update)
|
||||||
|
else
|
||||||
|
update_transaction_id(version)
|
||||||
|
save_associations(version)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -476,10 +480,14 @@ module PaperTrail
|
||||||
}
|
}
|
||||||
add_transaction_id_to(data)
|
add_transaction_id_to(data)
|
||||||
version = self.class.paper_trail_version_class.create(merge_metadata(data))
|
version = self.class.paper_trail_version_class.create(merge_metadata(data))
|
||||||
send("#{self.class.version_association_name}=", version)
|
if version.errors.any?
|
||||||
send(self.class.versions_association_name).send :load_target
|
log_version_errors(version, :destroy)
|
||||||
update_transaction_id(version)
|
else
|
||||||
save_associations(version)
|
send("#{self.class.version_association_name}=", version)
|
||||||
|
send(self.class.versions_association_name).send :load_target
|
||||||
|
update_transaction_id(version)
|
||||||
|
save_associations(version)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -646,6 +654,13 @@ module PaperTrail
|
||||||
version.save
|
version.save
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def log_version_errors(version, action)
|
||||||
|
version.logger.warn(
|
||||||
|
"Unable to create version for #{action} of #{self.class.name}##{id}: " +
|
||||||
|
version.errors.full_messages.join(", ")
|
||||||
|
)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue