diff --git a/app/models/concerns/orient_db_serializable.rb b/app/models/concerns/orient_db_serializable.rb
index 4d0daeeca520a6ad9fbbbdd55747b0d07290d422..2c4e3591afff87ac926e60a1df093228c451acdb 100644
--- a/app/models/concerns/orient_db_serializable.rb
+++ b/app/models/concerns/orient_db_serializable.rb
@@ -8,18 +8,23 @@ module OrientDbSerializable
       var_name = sanitize_orientdb_vars(var)
       hash[var_name] = sanitize_orientdb_values(self.instance_variable_get(var))
     end
-    hash.delete('id')
+    delete_unused_vars hash
+  end
 
-    excluded_orientdb_properties.each { |property| hash.delete(property.to_s) }
+  def excluded_orientdb_properties
+    []
+  end
 
-    # TODO: find a better way to ignore variables from ActiveModel
-    hash.delete("validation_context")
-    hash.delete("errors")
+  private
+
+  def delete_unused_vars(hash)
+    delete_vars_from_hash ['id', 'validation_context', 'errors'], hash
+    delete_vars_from_hash excluded_orientdb_properties, hash
     hash
   end
 
-  def excluded_orientdb_properties
-    []
+  def delete_vars_from_hash(vars=[], hash)
+    vars.each { |property| hash.delete(property.to_s) }
   end
 
 end
\ No newline at end of file