diff --git a/lib/activeuuid/patches.rb b/lib/activeuuid/patches.rb index 5f89dc3..dce9735 100644 --- a/lib/activeuuid/patches.rb +++ b/lib/activeuuid/patches.rb @@ -8,7 +8,7 @@ module Migrations def uuid(*column_names) options = column_names.extract_options! column_names.each do |name| - type = @base.adapter_name.downcase == 'postgresql' ? 'uuid' : 'binary(16)' + type = ActiveRecord::Base.connection.adapter_name.downcase == 'postgresql' ? 'uuid' : 'binary(16)' column(name, "#{type}#{' PRIMARY KEY' if options.delete(:primary_key)}", options) end end diff --git a/lib/activeuuid/uuid.rb b/lib/activeuuid/uuid.rb index dcff691..af3a120 100644 --- a/lib/activeuuid/uuid.rb +++ b/lib/activeuuid/uuid.rb @@ -54,26 +54,26 @@ def self.parse_string(str) module Arel module Visitors class DepthFirst < Arel::Visitors::Visitor - def visit_UUIDTools_UUID(o) - o.quoted_id + def visit_UUIDTools_UUID(object, attribute) + object.quoted_id end end class MySQL < Arel::Visitors::ToSql - def visit_UUIDTools_UUID(o) - o.quoted_id + def visit_UUIDTools_UUID(object, attribute) + object.quoted_id end end class SQLite < Arel::Visitors::ToSql - def visit_UUIDTools_UUID(o) - o.quoted_id + def visit_UUIDTools_UUID(object, attribute) + object.quoted_id end end class PostgreSQL < Arel::Visitors::ToSql - def visit_UUIDTools_UUID(o) - "'#{o.to_s}'" + def visit_UUIDTools_UUID(object, attribute) + "'#{object.to_s}'" end end end @@ -114,7 +114,7 @@ def uuids(*attributes) EOS end - def instantiate_with_uuid(record) + def instantiate_with_uuid(record, column_types) uuid_columns.each do |uuid_column| record[uuid_column] = UUIDTools::UUID.serialize(record[uuid_column]).to_s if record[uuid_column] end