]> git.openstreetmap.org Git - rails.git/blobdiff - db/migrate/039_add_more_controls_to_gpx_files.rb
Create an ApplicationRecord for models to inherit from
[rails.git] / db / migrate / 039_add_more_controls_to_gpx_files.rb
index 7cc485e6be5c889b870f98cf677abe641b71dcb7..6ce26588ea818337aa2fef5d9faa8d5a86102c84 100644 (file)
@@ -1,10 +1,14 @@
-require 'migrate'
+require "migrate"
+
+class AddMoreControlsToGpxFiles < ActiveRecord::Migration[4.2]
+  class Trace < ActiveRecord::Base
+    self.table_name = "gpx_files"
+  end
 
-class AddMoreControlsToGpxFiles < ActiveRecord::Migration
   def self.up
-    create_enumeration :gpx_visibility_enum, ["private", "public", "trackable", "identifiable"]
+    create_enumeration :gpx_visibility_enum, %w[private public trackable identifiable]
     add_column :gpx_files, :visibility, :gpx_visibility_enum, :default => "public", :null => false
-    Trace.update_all("visibility = 'private'", { :public => false })
+    Trace.where(:public => false).update_all(:visibility => "private")
     add_index :gpx_files, [:visible, :visibility], :name => "gpx_files_visible_visibility_idx"
     remove_index :gpx_files, :name => "gpx_files_visible_public_idx"
     remove_column :gpx_files, :public
@@ -12,7 +16,7 @@ class AddMoreControlsToGpxFiles < ActiveRecord::Migration
 
   def self.down
     add_column :gpx_files, :public, :boolean, :default => true, :null => false
-    Trace.update_all("public = false", { :visibility => "private" })
+    Trace.where(:visibility => "private").update_all(:public => false)
     add_index :gpx_files, [:visible, :public], :name => "gpx_files_visible_public_idx"
     remove_index :gpx_files, :name => "gpx_files_visible_visibility_idx"
     remove_column :gpx_files, :visibility