Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 7 additions & 8 deletions lib/also_migrate/migration.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,20 @@ module Migration

def self.included(base)
unless base.respond_to?(:method_missing_with_also_migrate)
base.extend ClassMethods
base.class_eval do
class <<self
alias_method :method_missing_without_also_migrate, :method_missing
alias_method :method_missing, :method_missing_with_also_migrate
end
include InstanceMethods
alias_method :method_missing_without_also_migrate, :method_missing
alias_method :method_missing, :method_missing_with_also_migrate
end
end
end

module ClassMethods
module InstanceMethods


def method_missing_with_also_migrate(method, *arguments, &block)
args = Marshal.load(Marshal.dump(arguments))
return_value = method_missing_without_also_migrate(method, *arguments, &block)
return_value = self.method_missing_without_also_migrate(method, *arguments, &block)

supported = [
:add_column, :add_index, :add_timestamps, :change_column,
Expand Down Expand Up @@ -63,4 +62,4 @@ def method_missing_with_also_migrate(method, *arguments, &block)
end
end
end
end
end