class Sequel::MigrationDSL

  1. lib/sequel/extensions/migration.rb
Superclass: BasicObject

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

Methods

Public Class

  1. create
  2. new

Public Instance

  1. change
  2. down
  3. migration
  4. no_transaction
  5. transaction
  6. up

Attributes

migration [R]

The underlying SimpleMigration instance

Public Class methods

create (&block)
[show source]
    # File lib/sequel/extensions/migration.rb
117 def self.create(&block)
118   new(&block).migration
119 end
new (&block)

Create a new migration class, and instance_exec the block.

[show source]
    # File lib/sequel/extensions/migration.rb
122 def initialize(&block)
123   @migration = SimpleMigration.new
124   Migration.descendants << migration
125   instance_exec(&block)
126 end

Public Instance methods

change (&block)

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 works for some simple cases.

[show source]
    # File lib/sequel/extensions/migration.rb
155 def change(&block)
156   migration.up = block
157   migration.down = MigrationReverser.new.reverse(&block)
158 end
down (&block)

Defines the migration's down action.

[show source]
    # File lib/sequel/extensions/migration.rb
129 def down(&block)
130   migration.down = block
131 end
no_transaction ()

Disable the use of transactions for the related migration

[show source]
    # File lib/sequel/extensions/migration.rb
134 def no_transaction
135   migration.use_transactions = false
136 end
transaction ()

Enable the use of transactions for the related migration

[show source]
    # File lib/sequel/extensions/migration.rb
139 def transaction
140   migration.use_transactions = true
141 end
up (&block)

Defines the migration's up action.

[show source]
    # File lib/sequel/extensions/migration.rb
144 def up(&block)
145   migration.up = block
146 end