Sha256: 6161888d83baea4d11f59a616332621306d72b93c522b658672e18fd72ec911c
Contents?: true
Size: 699 Bytes
Versions: 1
Compression:
Stored size: 699 Bytes
Contents
# frozen_string_literal: true require 'active_record' module WithModel class Table def initialize(name, options = {}, &block) @name = name.freeze @options = options.freeze @block = block end def create 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
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
with_model-2.1.0 | lib/with_model/table.rb |