Module: ROM::SQL::Migration

Included in:
Gateway
Defined in:
lib/rom/sql/migration.rb,
lib/rom/sql/migration/migrator.rb

Defined Under Namespace

Classes: Migrator

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Class Attribute Details

.connectionObject

Returns the value of attribute connection.



83
84
85
# File 'lib/rom/sql/migration.rb', line 83

def connection
  @connection
end

.pathObject



85
86
87
# File 'lib/rom/sql/migration.rb', line 85

def path
  @path || Migrator::DEFAULT_PATH
end

Class Method Details

.create(&block) ⇒ Object



94
95
96
97
# File 'lib/rom/sql/migration.rb', line 94

def create(&block)
  warn "ROM::SQL::Migration.create is deprecated please use ROM::SQL.migration (#{caller[0]})"
  ::Sequel.migration(&block)
end

.included(klass) ⇒ Object



49
50
51
52
53
54
55
56
# File 'lib/rom/sql/migration.rb', line 49

def self.included(klass)
  super
  klass.class_eval do
    option :migrator, reader: true, default: proc { |gateway|
      Migrator.new(gateway.connection)
    }
  end
end

.run(options = {}) ⇒ Object



89
90
91
92
# File 'lib/rom/sql/migration.rb', line 89

def run(options = {})
  warn "ROM::SQL::Migration.run is deprecated please ROM::SQL::Gateway#run_migrations (#{caller[0]})"
  ::Sequel::Migrator.run(connection, path, options)
end

Instance Method Details

#migration(&block) ⇒ Object

See Also:



61
62
63
# File 'lib/rom/sql/migration.rb', line 61

def migration(&block)
  migrator.migration(&block)
end

#run_migrations(options = {}) ⇒ Object

Run migrations for a given gateway

Examples:

ROM.setup(:sql, ['sqlite::memory'])
ROM.finalize
ROM.env.gateways[:default].run_migrations

Parameters:

  • options (Hash) (defaults to: {})

    The options used by Sequel migrator



76
77
78
# File 'lib/rom/sql/migration.rb', line 76

def run_migrations(options = {})
  migrator.run(options)
end