diff --git a/app/controllers/registrations_controller.rb b/app/controllers/registrations_controller.rb
index f09032a9d6b3c57b2d60e1b13afa9c8a3d81219e..e692f7f87efe5a8c2050d61dfaac9cfae200bc38 100644
--- a/app/controllers/registrations_controller.rb
+++ b/app/controllers/registrations_controller.rb
@@ -1,10 +1,12 @@
 class RegistrationsController < Devise::RegistrationsController
   after_action :create_user_dependencies, only: :create
 
+  private
+
   def create_user_dependencies
-    # if the user repository is orient db, then create the node in graph
-    # otherwise, nothing happens
-    user_repository.save resource
+    if resource.persisted?
+      user_repository.save resource
+    end
   end
 
   def user_repository
diff --git a/app/repositories/orient_db/user_repository.rb b/app/repositories/orient_db/user_repository.rb
index c01f6d1432de282ca4b9b8433a39c595c53d07db..5e77c2c2ce71df99b49aaf3a28eba1dc5c3af3f4 100644
--- a/app/repositories/orient_db/user_repository.rb
+++ b/app/repositories/orient_db/user_repository.rb
@@ -8,7 +8,7 @@ module OrientDb
     end
 
     def save(user)
-      connection.query sprintf("INSERT INTO User (title, u_id) VALUES (%s, %d)", user.email, user.id)
+      connection.command sprintf("INSERT INTO User (title, u_id) VALUES ('%s', %d)", user.email, user.id)
     end
 
     def update(params={})