Class Sequel::MigrationDSL
In: lib/sequel/extensions/migration.rb
Parent: BasicObject

Internal class used by the Sequel.migration DSL, part of the migration extension.

Methods

change   create   down   new   no_transaction   transaction   up  

Attributes

migration  [R]  The underlying Migration instance

Public Class methods

[Source]

     # File lib/sequel/extensions/migration.rb, line 116
116:     def self.create(&block)
117:       new(&block).migration
118:     end

Create a new migration class, and instance_eval the block.

[Source]

     # File lib/sequel/extensions/migration.rb, line 121
121:     def initialize(&block)
122:       @migration = SimpleMigration.new
123:       Migration.descendants << migration
124:       instance_eval(&block)
125:     end

Public Instance methods

Creates a reversible migration. This is the same as creating the same block with up, but it also calls the block and attempts to create a down block that will reverse the changes made by the block.

There are no guarantees that this will work perfectly in all cases, but it should work for most common cases.

[Source]

     # File lib/sequel/extensions/migration.rb, line 154
154:     def change(&block)
155:       migration.up = block
156:       migration.down = MigrationReverser.new.reverse(&block)
157:     end

Defines the migration‘s down action.

[Source]

     # File lib/sequel/extensions/migration.rb, line 128
128:     def down(&block)
129:       migration.down = block
130:     end

Disable the use of transactions for the related migration

[Source]

     # File lib/sequel/extensions/migration.rb, line 133
133:     def no_transaction
134:       migration.use_transactions = false
135:     end

Enable the use of transactions for the related migration

[Source]

     # File lib/sequel/extensions/migration.rb, line 138
138:     def transaction
139:       migration.use_transactions = true
140:     end

Defines the migration‘s up action.

[Source]

     # File lib/sequel/extensions/migration.rb, line 143
143:     def up(&block)
144:       migration.up = block
145:     end

[Validate]