From 5510753a4b21dfb17a733818a90b788cbb33eb54 Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Wed, 21 Jan 2009 14:18:43 -0800 Subject: [PATCH] Added migration to fully remove rate from Members. #1924 --- db/migrate/010_remove_rate_from_members.rb | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 db/migrate/010_remove_rate_from_members.rb diff --git a/db/migrate/010_remove_rate_from_members.rb b/db/migrate/010_remove_rate_from_members.rb new file mode 100644 index 0000000..a1a6e3c --- /dev/null +++ b/db/migrate/010_remove_rate_from_members.rb @@ -0,0 +1,26 @@ +RateMigrationErrorMessage = "ERROR: The Rate plugin is not installed. Please install the Rate plugin or downgrade to version 0.1.0 of the Budget plugin." + +begin + require_dependency 'rate' +rescue LoadError + raise Exception.new(RateMigrationErrorMessage) +end + +require_dependency 'user' +require_dependency 'member' + +class RemoveRateFromMembers < ActiveRecord::Migration + def self.up + self.check_that_rate_plugin_is_installed + remove_column :members, :rate + end + + def self.down + self.check_that_rate_plugin_is_installed + add_column :members, :rate, :decimal, :precision => 15, :scale => 2 + end + + def self.check_that_rate_plugin_is_installed + raise Exception.new(RateMigrationErrorMessage) unless Object.const_defined?("Rate") + end +end