lib/with_model/table.rb in with_model-1.2.1 vs lib/with_model/table.rb in with_model-1.2.2
- old
+ new
@@ -7,15 +7,28 @@
@options = options.freeze
@block = block
end
def create
- connection = ActiveRecord::Base.connection
- connection.drop_table(@name) if connection.table_exists?(@name)
+ connection.drop_table(@name) if exists?
connection.create_table(@name, @options, &@block)
end
def destroy
ActiveRecord::Base.connection.drop_table(@name)
+ end
+
+ private
+
+ def exists?
+ if connection.respond_to?(:data_source_exists?)
+ connection.data_source_exists?(@name)
+ else
+ connection.table_exists?(@name)
+ end
+ end
+
+ def connection
+ ActiveRecord::Base.connection
end
end
end