Modernise use of find and update_all in database migrations
[rails.git] / db / migrate / 051_add_status_to_user.rb
index 01d501d0162ec4ae2c18d710ac9b4dbaff11d11a..e79246f48c283b751a012e7b994b7ec06ec495a8 100644 (file)
@@ -6,9 +6,9 @@ class AddStatusToUser < ActiveRecord::Migration
 
     add_column :users, :status, :user_status_enum, :null => false, :default => "pending"
 
-    User.update_all("status = 'deleted'", { :visible => false })
-    User.update_all("status = 'pending'", { :visible => true, :active => 0 })
-    User.update_all("status = 'active'", { :visible => true, :active => 1 })
+    User.where(:visible => false).update_all(:status => "deleted")
+    User.where(:visible => true, :active => 0).update_all(:status => "pending")
+    User.where(:visible => true, :active => 1).update_all(:status => "active")
 
     remove_column :users, :active
     remove_column :users, :visible
@@ -18,9 +18,9 @@ class AddStatusToUser < ActiveRecord::Migration
     add_column :users, :visible, :boolean, :default => true, :null => false
     add_column :users, :active, :integer, :default => 0, :null => false
 
-    User.update_all("visible = true, active = 1", { :status => "active" })
-    User.update_all("visible = true, active = 0", { :status => "pending" })
-    User.update_all("visible = false, active = 1", { :status => "deleted" })
+    User.where(:status => "active").update_all(:visible => true, :active => 1)
+    User.where(:status => "pending").update_all(:visible => true, :active => 0)
+    User.where(:status => "deleted").update_all(:visible => false, :active => 1)
 
     remove_column :users, :status