class Sequel::MigrationDSL
Internal class used by the Sequel.migration
DSL, part of the migration
extension.
Attributes
migration[R]
The underlying SimpleMigration
instance
Public Class Methods
create(&block)
click to toggle source
# File lib/sequel/extensions/migration.rb 118 def self.create(&block) 119 new(&block).migration 120 end
new(&block)
click to toggle source
Create a new migration class, and instance_exec the block.
# File lib/sequel/extensions/migration.rb 123 def initialize(&block) 124 @migration = SimpleMigration.new 125 Migration.descendants << migration 126 instance_exec(&block) 127 end
Public Instance Methods
change(&block)
click to toggle source
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.
# File lib/sequel/extensions/migration.rb 156 def change(&block) 157 migration.up = block 158 migration.down = MigrationReverser.new.reverse(&block) 159 end
down(&block)
click to toggle source
Defines the migration's down action.
# File lib/sequel/extensions/migration.rb 130 def down(&block) 131 migration.down = block 132 end
no_transaction()
click to toggle source
Disable the use of transactions for the related migration
# File lib/sequel/extensions/migration.rb 135 def no_transaction 136 migration.use_transactions = false 137 end
transaction()
click to toggle source
Enable the use of transactions for the related migration
# File lib/sequel/extensions/migration.rb 140 def transaction 141 migration.use_transactions = true 142 end
up(&block)
click to toggle source
Defines the migration's up action.
# File lib/sequel/extensions/migration.rb 145 def up(&block) 146 migration.up = block 147 end